Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Plugins

ওয়ার্ডপ্রেস কাস্টম পোষ্ট টাইপ গাইডঃ তৈরি, ডিসপ্লে ও মেটা বক্স

by
Difficulty:IntermediateLength:LongLanguages:
This post is part of a series called A Guide to WordPress Custom Post Types.
WordPress Custom Post Types: Taxonomies, Admin Columns & Filters

Bengali (বাংলা) translation by Arnab Wahid (you can also view the original English article)

ওয়ার্ডপ্রেস কাস্টমাইজ করা অনেক সহজ। এটা বানানোই এমনভাবে হয়েছিল যেন সহজে কাস্টমাইজ করা সম্ভব হয়। এই টিউটোরিয়ালে আমরা দেখবো কিভাবে ওয়ার্ডপ্রেসের কাস্টম পোষ্ট টাইপ ফিচার নিয়ে কাজ করতে হয়।


কাস্টম পোষ্ট টাইপ আসলে কি?

ধরেন আপনার ব্লগে আপনি মুভি রিভিউ এর জন্য একটি আলাদা সেকশন রাখতে চান। কাস্টম পোষ্ট টাইপ ব্যবহার করে, আপনি পেজ বা পোস্টের মত নতুন আইটেম তৈরি করে নিতে পারবেন, যেটায় ভিন্ন একটা ডাটা সেট থাকবে। এটার জন্য একটা আলাদা অ্যাডমিনিস্ট্রেশন মেন্যু, ডেডিকেটেড এডিটিং পেজ ও কাস্টম ট্যাক্সোনমি থাকবে।

Posts, Pages, Attachments এর পাশাপাশি কাস্টম পোষ্ট টাইমের আলাদা করে অ্যাডমিনিস্ট্রেটিভ অপশন থাকবে। কাস্টম পোষ্ট টাইপে যে কোন রকম ইনফরমেশন স্টোর করা যায়। এর জন্য ডেডিকেটেড এডিটর, মিদিয়া আপলোডার ও ওয়ার্ডপ্রেস টেবিল স্ট্রাকচার থাকে। ওয়ার্ডপ্রেস এপিআই দিয়ে কাস্টম পোষ্ট টাইপ তৈরি করলে, সেটার থিম ও টেমপ্লেটের সাথে কাজ করতে সুবিধা হয়। কাস্টম পোষ্ট টাইপ এসইও ফ্রেন্ডলি হয়, এর পারমালিংকের কারণে।


কেন কাস্টম পোষ্ট টাইপ ব্যবহার করবেন?

কাস্টম পোষ্ট টাইপ ব্যবহার করে একেক রকম পোষ্ট একত্রে একেক ক্যাটাগরিতে ভাগ করে রাখা যায়।  অন্য রকম পোষ্ট রেগুলার পোষ্ট থেকে আলাদা করে রাখা যায়। সহজ, তাই না!


একটি কাস্টম পোষ্ট টাইপ প্লাগিন তৈরি করা

এখন মুভি রিভিউ এর জন্য আমরা একটি কাস্টম পোষ্ট টাইপ প্লাগিন তৈরি করব। চলুন শুরু করি।

১ম ধাপঃ প্লাগিন ডায়রেক্টরি

ওয়ার্ডপ্রেস প্লাগিন ডায়রেক্টরিতে যান, Movie-Reviews নামে একটি ফোল্ডার তৈরি করুন।

২য় ধাপঃ পিএইচপি ফাইল তৈরি

Movie-Reviews.php নামে একটি ফাইল তৈরি করুন

৩য় ধাপঃ হেডার অ্যাড করুন

ফাইল ওপেন করে হেডার কোড অ্যাড করুন

৪র্থ ধাপঃ কাস্টম ফাংশন রেজিস্টার করুন

পিএইচপি ক্লোজিং ট্যাগের আগে create_movie_review ফাংশন ডিক্লেয়ার করুন।

৫ম ধাপঃ ফাংশন ইমপ্লিমেন্ট করা

create_movie_review ফাংশন ইমপ্লিমেন্ট করুন

register_post_type ফাংশন নিজে থেকেই অনেক কিন্তু করে দেয়। এরপর ওয়ার্ডপ্রেস অ্যাডমিন এরিয়াতে কাস্টম পোষ্টের জন্য আলাদা এরিয়া দেখা যাবে।  এই ফাংশনে দুটি আর্গুমেন্ট আছে। একটা name, আগেরটা হচ্ছে একটা এরে, যেখানে কাস্টম পোষ্টের প্রপার্টি ডিফাইন করা হয়েছে।  এটি আরেকটি এরে, যেখানে টেক্সট স্ট্রিং ডিসপ্লে করার জন্য বিভিন্ন লেবেল স্টোর করা আছে। যেমন, name, নামের জন্য, edit এবং view হচ্ছে যথাক্রমে Edit এবং View বাটন শো করার জন্য। বাকিটা দেখলেই বুঝতে পারবেন বলে আশা করি।

পরের আর্গুমেন্টেঃ

  • 'public' => true অ্যাডমিন প্যানেলে ও ফ্রন্টেন্ডে কাস্টম পোষ্টের ভিজিবিলিটি সেট করে।
  • 'menu_position' => 15 নির্ধারণ করে কাস্টম পোষ্ট টাইপের মেন্যু পজিশন কি হবে।
  • 'supports' => array( 'title', 'editor', 'comments', 'thumbnail', 'custom-fields' ) ডিসপ্লে ফিচার নির্ধারণ করে।
  • 'taxonomies' => array( '' ) কাস্টম ট্যাক্সোনমি ঠিক করে। এখানে এটা ডিফাইন করা নেই।
  • 'menu_icon' => plugins_url( 'images/image.png', __FILE__ ) অ্যাডমিন মেন্যু আইকন ডিসপ্লে করে।
  • 'has_archive' => true কাস্টম পোষ্ট টাইপ আর্কাউভিং এনেবল করে।

WordPress Codex register_post_type page চেক করুন, সেখানে কাস্টম পোষ্ট টাইপের ব্যাপারে আরও বিস্তারিত লেখা আছে।

৬ষ্ঠ ধাপঃ কাস্টম পোষ্ট টাইপ আইকন

16x16 px আইকন ইমেজ প্লাগিন ফোল্ডারে সেভ করুন। এটা ড্যাশবোর্ডে কাস্টম পোষ্ট টাইপের আইকন হিসেবে দেখা যাবে।

৭ম ধাপঃ প্লাগিন অ্যাক্টিভেট করুন

প্লাগিন অ্যাক্টিভেট করুন, আপনার কাস্টম পোষ্ট টাইপ রেডি।

৮ম ধাপঃ নতুন আইটেম অ্যাড করা

Add New ক্লিক করে কাস্টম পোষ্ট এডিটরে যান। মুভির নাম, রিভিউ ও ইমেজ দিন।

৯ম ধাপঃ পাবলিশ

পাবলিশ করে View Movie Review লিংকে ক্লিক করুন।


কাস্টম পোষ্ট টাইপের মেটা বক্স ফিল্ড অ্যাড করা।

মেটা বক্স ফিল্ড দিয়ে কাস্টম পোষ্ট টাইপের জন্য দরকারি ফিল্ড পোস্টে অ্যাড করা যায়, ডিফক্ট কাস্টম ফিল্ড ব্যবহার করা ছাড়াই।

১ম ধাপঃ কাস্টম ফাংশন রেজিস্ট্রেশন

Movie-Reviews.php ফাইল ওপেন করে নিচের কোড অ্যাড করুন। এটি অ্যাডমিন ইন্টারফেসের জন্য একটি ফাংশন রেজিস্টার করে।

২য় ধাপঃ কাস্টম ফাংশন ইমপ্লিমেন্ট করা

movie_reviews কাস্টম পোষ্ট টাইপের জন্য my_admin ফাংশন রেজিস্টার করুন।

add_meta_box ফাংশন কাস্টম পোষ্ট টাইপের জন্য মেটা বক্স রেজিস্টার করে। কোন অ্যাট্রিবিউট কি কাজ করেঃ

  • movie_review_meta_box ব্যবহারে একটি HTML id দরকার হয়।
  • Movie Review Details মেটা বক্সের হেডিং এ ভিজিবল থাকে।
  • display_movie_review_meta_box একটা কলব্যাক বা মেটা বক্সের কন্টেন্ট রেন্ডার করে।
  • movie_reviews হচ্ছে কাস্টম পোষ্ট টাইপের নাম, যেখানে মেটা বক্স শো হবে।
  • normal পেজের ওই পার্ট ডিফাইন করে যেখানে এডিট সেকশন শো করবে।
  • high বক্স ভিজিবিলিট এর প্রায়োরিটি ডিফাইন করে।

৩য় ধাপঃ display_movie_review_meta_box ইমপ্লিমেন্ট করা

এই কোড মেটা বক্সের কন্টেন্ট রেন্ডার করে। এই ভ্যারিয়েবলে, মুভি রিভিউ এর কোন কন্টেন্ট এডিটরে শো হবে, তা স্টোর করা থাকে। post ID দিয়ে ডাটাবেস থেকে কন্টেন্ট ফেচ করে তা স্ক্রিনে দেখানো হয়। get_post_meta এ নতুন এট্রি অ্যাড করলে সেটা একটি খালি স্ট্রিং ফেচ করে তা ডিসপ্লে করে।

৪র্থ ধাপঃ সেভ পোস্ট ফাংশন রেজিস্টার করা

যখন ডাটাবেসে একটা পোষ্ট সেভ হয়, তখন এই ফাংশন কল করা হয়।

৫ম ধাপঃ add_movie_review_fields ইমপ্লিমেন্ট করা

অ্যাডমিন প্যানেল থেকে পোষ্ট সেভ বা ডিলিট করলে এই ফাংশন কল হয়। পোষ্ট ডাটা চেক করে তার সাথে এই ফাংশন মেটা বক্স এসাইন করে দেয়।

৬ষ্ঠ ধাপঃ ডিফল্ট কাস্টম ফিল্ড অপশন ডিসেবল করা

কাস্টম পোষ্ট টাইপ তৈরি করার সময় আমরা create_movie_review ফাংশন রেজিস্টার করেছি। supports এরে থেকে custom-fields ইলিমেন্ট ডিলিট করে দিন, এটা আর লাগবে না। Movie Reviews এডিটরে যান, Movie Author এবং Movie Rating নামে দুটি ফিল্ড মেটা বক্সে দেখতে পাবেন। এভাবে আপনি অন্য ইলিমেন্টও অ্যাড করতে পারেন।


কাস্টম পোষ্ট টাইপের জন্য একটি ডেডিকেটেড টেমপ্লেট তৈরি করা

কাস্টম পোষ্টের ডাটা সঠিক ভাবে ডিসপ্লে করতে একটি কাস্টম পোস্ট এর টেমপ্লেট দরকার। এখন আমরা Movie Review কাস্টম পোষ্ট টাইপের জন্য একটা পোষ্ট টেমপ্লেট তৈরি করব।

১ম ধাপঃ একটা ডেডিকেটেড টেমপ্লেট ফোর্স করার জন্য একটি ফাংশন রেজিস্টার করা

Movie-Reviews.php ওপেন করে নিচের কোড অ্যাড করুন। এটা ওয়ার্ডপ্রেস অ্যাডমিন ইন্টারফেস ভিজিট করলে একটা ফাংশন কল করে।

২য় ধাপঃ ফাংশনটি ইমপ্লিমেন্ট করা

এই কোড single-(post-type-name).php টাইপের নাম থিম ডায়রেক্টরিতে সার্চ করে। কিছু না পেলে, প্লাগিন ডায়রেক্টরিতে কোন টেমপ্লেট আছে কিনা তা চেক করে। template_include হুক ব্যবহার করে একটা স্পেসিফিক টেমপ্লেট এনফোর্স করা হত।

৩য় ধাপঃ সিঙ্গেল পেজ টেমপ্লেট ফাইল তৈরি করা

আগের পরিবর্তন প্লাগিন ফাইলে সেভ করে নিয়ে, single-movie_reviews.php নামের আরেকটি ফাইল তৈরি করুন এবং নিচের কোড তাতে বসিয়ে নিন।

এখানে আমরা একটা লুপ ব্যবহার করে একটা বেসিক পেজ টেমপ্লেট তৈরি করেছি। query_posts ফাংশন এই লুপ ব্যবহার করে কাস্টম পোষ্ট গুলো শো করে। এটা একটা বেসিক লুপ, চাইলে এটা নিজের মত করে পরিবর্ধিত করে নিতে পারেন। সিএসএস দিয়ে ইলিমেন্টগুলো ঠিক মত ফরম্যাটও করে নিতে পারেন।

নোটঃ সদ্য তৈরি করা টেমপ্লেট দিয়ে, ড্যাশবোর্ড থেকে একটা নতুন পেজ তৈরি করে নিতে হবে।

৪র্থ ধাপঃ ইমেজ

আইকনের জন্য প্লাগিন ফোল্ডারে 32x32 px সাইজের দুটি ছবি সেভ করে নিন। ইমেজ দুটাকে icon.pnggrey.png নাম দিন। শেষ, এখন মুভি রিভিউ এর সব পোস্ট তারিখ অনুযায়ী একটা পেজে ডিসপ্লে হবে।

পরবর্তী টিউটোরিয়ালে আমরা দেখবো কিভাবে আর্কাউভ পেজ, কাস্টম ট্যাক্সোনমি কাস্টম কলাম ইত্যাদি নিয়ে কাজ করতে হয়। আপনার কোণ সাজেশন থাকলে তা জানাতে পারেন।

Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.