আসসালামু আলাইকুম, আজকে আমি কথা বলবো WordPress “Capability” নিয়ে। Capability টা কি? এক কথায় User দের Access পার্মিশন। আপনি কেমন User দের কাছে কোন তথ্য ডেটার পার্মিশন দিবেন সেটা নির্ধারন করে দেয়াই হচ্ছে “Capability”।
চলুন শিখে নেই কিভাবে আমরা আমাদের টার্গেট User দের কাছে ডেটা বা ইনফর্মেশন দেখাবো। আমরা Else If প্রোগ্রামটিতো সবাই চিনি। আমরা যারা PHP/Wordpress নিয়ে কাজ করি সবাই জানি Else If এর ব্যাবহার। আমাদের টার্গেট User দের বের করার একটি হুক রয়েছে। সেটি হচ্ছে current_user_can($roles) ধরুন আমরা একটি লেখা অথরকে দেখাবো, তাহলে কিভাবে কোডটি লিখতে হবে নিচে দেখুনঃ
অথবা,
উপরের ২টি কোড দেখুন। ২ টি কোড একই কাজ করবে। আমরা একটি IF ভ্যারিয়েবল নিয়েছি আর সেখানে ব্যাবহার করেছি current_user_can(‘author’) আর তার ভেতরে লিখেছি My Text, তার মানে শুধু মাত্র যারা Author আছে তারাই এই লিখাটি দেখতে পারবে। আপনি My Text এর যায়গায় যা খুশি দিতে পারেন।
current_user_can(‘author’) আমরা এটা দেয়ার কারনে শুধু মাত্র অথররা দেখতে পারবে আমরা যদি ‘author’ না দিয়ে ‘contributor’ দিতাম তাহলে যত ‘contributor’ আছে তারা দেখতে পাবে। এছাড়াও আপনি ‘administrator’ ‘editor’ ‘subscriber’ এগুলোও ব্যাবহার করতে পারেন।
এখন আমরা চাচ্ছি এডমিন এবং এডিটরদের এক্সেস দেয়ার জন্য। এজন্য আমাদের কিরকম কোড লিখতে হবে চলুন দেখি।
দেখুন আমরা IF Variable এর মধ্যে ২ টি Access Hook ব্যাবহার করেছি ‘administrator’ এবং ”editor’, ফলে এডমিন এবং এডিটররা এক্সেস পাবে। আমরা যদি ‘administrator’ এবং ‘editor’ না দিয়ে ‘author’ এবং ”contributor’ দিতাম তাহলে অথর এবং কন্ট্রিবুটর-রা এক্সেস পেতো। এখানে আমরা ২ টি হুক ব্যাবহার করেছি। আমরা চাইলে ৩ টি হুক ব্যাবহার করতে পারতাম চাইলে ৪ টি ও দিতে পারতাম যত খুশি তত।
চলুন ৩ টি এক্সেস দিয়ে দেখাইঃ
এখন আমাদের এই লেখাটি এডমিন, এডিটর এবং অথররা দেখতে পাবে।
এখন চলুন দেখি লগিন অথবা আনলগিন ইউজার এক্সেস সম্পর্কে জেনে নেই।
লগিন এক্সেস এর কাজ করার জন্য আমাদের একটি হুক রয়েছে সেটি হচ্ছে is_user_logged_in() এই হুকটি। লগিন ইউজারদের ডেটার এক্সেস দেয়ার জন্য নিচের মতো করে কোড লিখতে হবেঃ
এই কোডটি লিখার পর শুধু মাত্র লগিন ইউজাররাই লেখাটি দেখতে পাবে। চলুন দেখি যারা লগিন ছাড়া থাকবে বা আনলগিন ইউজারদের কিভাবে ডেটা এক্সেস দেবো সেটা দেখি।
এই কোডটি লিখার কারনে শুধু আনলগিন ইউজাররাই দেখতে পাবে। লগিন ইউজাররা দেখতে পাবে না।
এখন আপনি চাচ্ছেন আনলগিন ইউজার যারা থাকবে তাদের অটোমেটিক লগিন পেজে নিয়ে যাবে আর যারা লগিন করা থাকবে তারা সব কিছু এক্সেস পাবে। এজন্য আমাদের কি করতে হবে। নিচের কোডটি header.php ফাইলে বয়াতে হবেঃ
এর ফলে যারা লগিন ছাড়া থাকবে তারা অটোমেটিক লগিন পেজে চলে যাবে। লগিন করবে তারপর সব কিছুর/সব পেজের আক্সেস পাবে।