বৃহস্পতিবার,  বিকাল ৪:০৩  ♦  ২৮শে মার্চ, ২০২৪ ইং, ১৪ই চৈত্র, ১৪৩০ বঙ্গাব্দ ( বসন্তকাল )
বৃহস্পতিবার,  বিকাল ৪:০৩  ♦  ২৮শে মার্চ, ২০২৪ ইং, ১৪ই চৈত্র, ১৪৩০ বঙ্গাব্দ ( বসন্তকাল ), ১৮ই রমযান, ১৪৪৫ হিজরী  ♦
ওয়ার্ডপ্রেস টিপস

শেয়ার

ইউজার পারমিশন নিয়ে একটি প্রশ্ন

আপনার জিজ্ঞাসাবিভাগ: ওয়ার্ডপ্রেসইউজার পারমিশন নিয়ে একটি প্রশ্ন
মোঃ আবুল বাশার প্রশ্ন করেছে ৮ বছর আগে

আমি একটি স্কুলের সাইট তৈরী করেছি, যা দেখার জন্য এখানে ক্লিক করুন।

এখানে একটি ছাত্র/ছাত্রী লিষ্ট  এবং শিক্ষক / শিক্ষিকা লিষ্ট আছে।

আর আমার ইউজার লিষ্টে ইউজার রোল হিসেবে

computer_operator

data-entry

students

teachers

এবং ওয়ার্ডপ্রেসের ডিফল্ট উইজার রোল গুলো আছে, নিচের ছবিটি দেখতে পারেন।

Screenshot_1

এখন আমি চাচ্ছি, শিক্ষক / শিক্ষিকাদের ইনফো দেখতে হলে, তাকে অবশ্যই teachers রোল পারমিশন আইডি থেকে লগইন থাকতে হবে।

মানে টিচারের পারমিশন দেখতে পারবে শুধু

teachers

computer_operator

data-entry

এডমিন, এডিটর।

মানে কোন পাবলিক এবং ছাত্র/ছাত্রীদের আইডি থেকে এটা ভিউ করা যাবে না। আমি জানি এ্যডমিনদের জন্য একটি is_admin() নামে একটি ফাংশন আছে, কিন্তু আমি আমার তৈরী এই কাস্টোম ইউজার রোল গুলোকে কিভাবে পারমিশন দিবো?

বিষয়টি হয়তো আপনাদের সঠিক ভাবে বুঝাতে পারতেছি না 🙁

এই লিংকটি দেখুন, এখানে ক্লিক করলে সবাই এই লিস্ট দেখতে পারতেছে। কিন্তু আমি চাচ্ছি আমার নিদিস্ট ইউজার রোলদের পারমিশন দিতে, তারা শুধু লগইন করেই এই পেজটি দেখতে পারবে।

ধন্যবাদ, সবার উত্তরের অপেক্ষায় রাইলাম।

 

২ টি উত্তর
সেরা উত্তর
ইফতেখার উত্তর দিয়েছে ৮ বছর আগে

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

if( current_user_can('capability_name') ) {
// page you want to display
}

এরপরও সমস্যা হলে মন্তব্য করে জানাতে পারেন। আমি চেষ্টা করবো যতটুকু সাধ্য আছে সাহায্য করার।

মোঃ আবুল বাশার উত্তর করেছে ৮ বছর আগে

ধন্যবাদ ভাই, দেখি চেস্টা করি, সমস্যা বা সাকসেস হলে জানাবো।<br>তবে একাদিক উইজাদের নাম দিতে চাইলে? শুধু && ব্যবহার করলেই হবে? যেমন: <br><br>if( current_user_can('teachers' && 'computer_operator') ) {<br> // page you want to display<br>}<br><br>এই রকম?

মোঃ আবুল বাশার উত্তর করেছে ৮ বছর আগে

ধন্যবাদ ভাই, দেখি চেস্টা করি, সমস্যা বা সাকসেস হলে জানাবো।

ইফতেখার উত্তর করেছে ৮ বছর আগে

if( current_user_can(‘teachers’) || current_user_can(‘computer_operator’) ) {// page you want to display}এরকম হবে।

মোঃ আবুল বাশার উত্তর দিয়েছে ৮ বছর আগে

ভাই আমি দুইটি ব্যবহার করলে কাজ করে, কিন্তু যখন একই নিয়মে তিনটি বা একাদিক ইউজার পারমিশন দিতে চাই তখন এই ইরোর আসে। তাহলে কি আমার একাদিক ব্যবহারের নিয়মে ‍ভুল আছে এখানে দেখুন:
<?php if( current_user_can(‘student_teacher_panel_manager’) || current_user_can(‘administrator’) ) || current_user_can(‘student_manager’) ) : ?>
 
ইরোর আসে:
Parse error: syntax error, unexpected ‘||’ (T_BOOLEAN_OR) in C:\xampp\htdocs\pak\wp-content\themes\edu\single-teachers.php on line 8
 
উল্লেখ্য যে, আমি শেষে endif করেছি, শুধু যখন আমি দুই বেশি একাদিক ব্যবহার করতে চাই তখনই ইরোর আসে। এ ছাড়া আপনার দেয়া নিয়মে দুইটিতে কাজ করে।

মোঃ আবুল বাশার উত্তর করেছে ৮ বছর আগে

ওহ, সরি ভাই, পেয়েছি, এখানে একটি বেরাকেটের সমস্যা ছিলো।