ওয়ার্ডপ্রেসে ট্যাক্সোনমি মেটার ব্যবহার - tuts nano
লক্ষ করুন: অদ্য ৯ ডিসেম্বর ২০১৫ তারিখে ওয়ার্ডপ্রেস ৪.৪.০ রিলিযের সাথে ওয়ার্ডপ্রেসের ট্যাক্সোনমি টার্মের মেটা ডাটা রাখার জন্য নতুন একটি টেবিল termmeta এবং প্রয়োজনীয় কোড সক্রীয় করা হয়েছে। সুতরাং টার্ম মেটা যোগ করা এখন আরো সহজ। আপনার দরকার add_term_meta(), update_term_meta(), get_term_meta() ইত্যাদি ফাংশন। তবে এপর্যন্ত টার্মে, মেটা বক্স যোগ করা হয়নি, তাই ফিল্ড যোগ করার ব্যাপারটি আপনি এই টিউটোরিয়াল থেকে দেখে সহায়তা নিতে পারেন। অবশ্য আপনি যদি ওয়ার্ডপ্রেসের ৪.৪.০-এর চেয়ে পুরোন সংস্করণ নিয়ে কাজ করে থাকেন, তাহলে এই টিউটোরিয়ালটি আপনার কাজে লাগবে।

ওয়ার্ডপ্রেস ৪.৩ ছাড়পত্র পেয়েছে ১৯ আগস্ট ২০১৫, এবং এরই সাথে ট্যাক্সোনমিতে একটা নতুন দিগন্তও সূচিত হয়েছে। ট্যাক্সোনমি টার্মগুলো এখন যেকোনো ট্যাক্সোনমি থেকেই আসুক না কেন, তারা এখন একক^, অর্থাৎ একটার সাথে আরেকটা মিলবে না। কাজ শুরু করার আগে আসুন পরিষ্কার হয়ে নেয়া যাক, ট্যাক্সোনমি আর টার্ম দ্বারা কী বোঝানো হচ্ছে।

পরিচিতি

ওয়ার্ডপ্রেসে পূর্বনির্ধারিত ট্যাক্সোনমির মধ্যে বহুল পরিচিত হলো Categories, Tags ইত্যাদি। হ্যা, ঠিকই শুনছেন, ক্যাটাগরি, ট্যাগ – এগুলো আসলে একেকটা ট্যাক্সোনমি। এর মধ্যে Categories-এ পূর্বনির্ধারিত থাকে Uncategorized নামক একটা ক্যাটাগরি। আমরা যারা ক্যাটাগরি আর ট্যাগ ব্যবহার করতে অভ্যস্থ, আমরা জানি, ক্যাটাগরিতে একটার অধীনে (under) আরেকটাকে সেট করা যায়, কিন্তু ট্যাগ প্রতিটাই আলাদা আলাদা। এই যে, Categories এবং Tags, এরা হলো ট্যাক্সোনমি, আর Categories-এর ভিতরে ঐ যে Uncategorized, সেটা হলো ট্যাক্সোনমি টার্ম।

এই পূর্বনির্ধারিত ট্যাক্সোনমি আর টার্মের বাইরে ইচ্ছেমতো ট্যাক্সোনমি আর টার্ম তৈরি করা যায়। ধরা যাক, আমরা ছাত্রদের তথ্য নিয়ে কাজ করছি, এবং তাঁদের শ্রেণীর তথ্য সংরক্ষণ করার জন্য একটা নিজস্ব ট্যাক্সোনমি (Custom Taxonomy) বানিয়ে নিলাম: Classes। এবারে এই ক্লাসেস ট্যাক্সোনমির ভিতরে আমরা ইনসার্ট করলাম I, II, III, IV, V ইত্যাদি শ্রেণীর নাম, অর্থাৎ রোমান সংখ্যায় আমরা শ্রেণীগুলোর নাম লিখেছি: ওয়ান, টু, …। …তাহলে Classes হলো আমাদের ট্যাক্সোনমি, আর I, II, III, … এগুলো হলো আমাদের টার্ম।

কেন দরকার?

আমরা যারা ওয়ার্ডপ্রেসের পোস্টে অতিরিক্ত তথ্য যোগ করতে চাই, আমরা জানি Post Meta’র গুরুত্ব সেখানে কতটা। পোস্ট মেটা দিয়ে হেন কাজ নেই যে, করা যায় না। আর যারা ডাটাবেয ঘাঁটতে জানি, তারা জানি যে, পোস্টের সাথের এই অতিরিক্ত তথ্য (Meta data) জমা রাখার জন্য ওয়ার্ডপ্রেসে একটা আলাদা টেবিলও আছে, নাম postmeta। এবং খুব সহজে সেখানকার তথ্য নিয়ে খেলার জন্য রয়েছে বেশ কয়েকটা সহজ ফাংশন: add_post_meta(), update_post_meta(), get_post_meta(), delete_post_meta() ইত্যাদি। এই ফাংশনগুলো ব্যবহার করে, ধরা যাক, আপনার প্রতিটা পোস্টকে আলাদা আলাদা রঙে রাঙাতে চাচ্ছেন, তো পোস্টের মেটা ডাটাতে একটা করে রঙের কোড পাঠিয়ে দিলেই কাজটা আপনার হয়ে যাচ্ছে। …পোস্ট মেটার ব্যবহার খুব সহজ। 🙂

পূর্বনির্ধারিত ট্যাক্সোনমি ইনসার্ট করার ফর্ম

পূর্বনির্ধারিত ট্যাক্সোনমি ইনসার্ট করার ফর্ম

এবারে ধরা যাক, আপনার স্কুলের ক্লাসগুলোর প্রত্যেকটাকে একটা করে ফুলের ছবি দিয়েও সূচিত করা হয়। কিন্তু ওয়ার্ডপ্রেসের ট্যাক্সোনমি ইনসার্শন প্যানেলে যে ফিল্ডগুলো আছে, তা দিয়ে তো ফুলের ছবি ইনসার্ট করা সম্ভব নয়। কারণ সেখানে আপনি টার্মের নামটা, স্লাগ (প্রীটি পার্মালিংকে ইউআরএল-এ যেটা দেখা যায়), শীর্ষ শিরোনাম (যদি এটা অন্য কোনোটার অধীনে সেট করার বিষয় থাকে), আর কিছু বিবরণ। কিন্তু রঙের কথা কোথায় যোগ করবেন?

তখনই মনে পড়ে পোস্টের অতিরিক্ত তথ্য যোগ করার পদ্ধতির – মেটা ডাটা। কিন্তু দুঃখের বিষয় হচ্ছে, ট্যাক্সোনমিতে মেটা ডাটা যোগ করার কোনো ব্যবস্থা ওয়ার্ডপ্রেসে নেই। সেজন্য এর আলাদা কোনো টেবিলও নেই। কিন্তু এর যে দরকার আছে, সে নিয়ে বিস্তর আলোচনা চলছে বহুদিন ধরে। ওয়ার্ডপ্রেস বহুল ব্যবহৃত একটা সিএমএস, পৃথিবীব্যাপী কোটি কোটি ব্যবহারকারী এটি ব্যবহার করছেন, তাই এতে হুট করে কোনো পরিবর্তন আনা যাবে না। দরকার বহু আলোচনা, গবেষণা, এবং পরীক্ষা-নিরীক্ষা। যদি সবকিছু সন্তোষজনক হয়, তবেই সেটা প্রয়োগ করা হয়। তাই, এটা যে কবে হবে, বা আদৌ হবে কিনা, সেটা আমরা জানি না।

কিন্তু ততদিন কি আমরা বসে থাকবো? আমরা কি আমাদের প্রয়োজনগুলো পূরণ করবো না? আমাদের ক্লাসগুলোর সাথে ফুলের ছবি কি আমরা দিতে পারবো না?

অবশ্যই পারবো, ইনশাল্লাহ।

কিভাবে?

প্রথমেই সিদ্ধান্ত নিই যে, আমরা কি পোস্ট মেটার মতো করে আলাদা একটি টেবিল বানিয়ে নিব ট্যাক্সোনমি মেটার জন্যও? সত্যি বলতে কি এ’নিয়ে বিস্তর বিতর্ক আছে। অনেকের মতেই ওয়ার্ডপ্রেস ডাটাবেয স্কেমাতে থাকাটা যৌক্তিক, নিরাপদ, এবং দ্রুত। তাই আমরা নতুন টেবিল তৈরি না করে কিভাবে সেটা করা সম্ভব, তা-ই এখানে দেখাবো।Continue reading