সদস্যকে কেবলমাত্র কাস্টম পোস্ট ধরণের অ্যাক্সেসের অনুমতি দিন। শুধুমাত্র তাদের নিজস্ব পোস্ট সম্পাদনা করার অনুমতি


29

ঠিক আছে আমি এটি আক্রমণ করার সেরা উপায় খুঁজছি।

আমি পিএইচপি এবং ওয়ার্ডপ্রেসে কাস্টম মেটা ক্ষেত্রগুলি সহ কাস্টম পোস্ট ধরণের তৈরি করে খুব আরামদায়ক।

আমি যা করতে দেখছি তা এখানে:

  1. ব্যবহারকারী নিবন্ধভুক্ত এবং ডিফল্টরূপে গ্রাহক সেট করা হয়।
  2. কাস্টম পোস্ট ধরণের অনুমতি পেতে প্রশাসকের কাছ থেকে ব্যবহারকারীদের অনুরোধগুলি।
  3. অ্যাডমিন ব্যবহারকারীকে "শপ মালিক" এর মতো আরেকটি অনুমতি নামে নিযুক্ত করে।
  4. ব্যবহারকারী এখন কাস্টম পোস্ট প্রকারটি দেখতে পাবেন এবং এই পোস্টের ধরণে একটি এন্ট্রি করতে পারবেন।
  5. ব্যবহারকারী কেবল তাদের নিজস্ব পোস্ট দেখতে এবং সম্পাদনা করতে পারে।

আমার নিম্নলিখিতগুলিতে সহায়তা দরকার:

  1. "শপের মালিক" নামে একটি নতুন "ভূমিকা" কীভাবে তৈরি করবেন,
  2. কাস্টম পোস্ট প্রকারটি দেখতে এবং অ্যাক্সেস পেতে কেবলমাত্র ভূমিকাটির সঠিক অনুমতি কীভাবে দেওয়া যায়।
  3. এই কাস্টম পোস্ট ধরণে কেবল ব্যবহারকারীকে তাদের নিজস্ব পোস্টগুলি দেখতে এবং সম্পাদনা করার অনুমতি দিন।

আদর্শভাবে আমি পছন্দ করব এই সমস্ত কাজটি ডাব্লুপি-অ্যাডমিন থেকে করা হয়েছিল তবে আমি অনুমান করছি যে আমার পরে সীমাবদ্ধ নিয়ন্ত্রণ পাওয়ার জন্য এটির জন্য একটি সামনের প্রান্তটি তৈরি করার প্রয়োজন হতে পারে।

যে কোনও ইনপুট প্রশংসিত হয়।

আন্তরিক শুভেচ্ছা

উত্তর:


21

জাস্টিন টডলকের প্লাগইন " সদস্য " ব্যবহার করুন। এটি আপনাকে নতুন ভূমিকা তৈরি করতে এবং বিদ্যমান ভূমিকা সম্পাদনা করার পাশাপাশি কাস্টম ক্ষমতা যুক্ত করার ক্ষমতা দেয় gives আপনাকে যে সমস্ত কাজ করতে হবে তা কয়েকটি ক্লিকে নামানো যেতে পারে।

আমি জানি আপনি জাউমসের জবাব সম্পর্কে আপনার মন্তব্যে বলেছেন যে আপনি 'নিজেই কার্যকারিতা লিখতে চাইছেন তাই সবকিছুর উপর আমার সম্পূর্ণ নিয়ন্ত্রণ রয়েছে।' ওপেন সোর্স সফ্টওয়্যারটির পুরো পয়েন্টটি এটি অনুপস্থিত। জাস্টিন ট্যাডলক তার প্লাগইন প্রকাশ করেছেন যাতে আপনি এটিকে যথাযথভাবে ব্যবহার করতে পারেন যাতে আপনার প্রতিটি কিছুর উপর সম্পূর্ণ নিয়ন্ত্রণ থাকে।

আপনি কি সত্যিই যদি সত্যিই চাকা reinvent, সম্ভাব্য আপনার নিজের সময় ঘন্টার শত শত নষ্ট চান আমি তোমাদের বন্ধ করতে পারবেন না, কিন্তু আপনি অন্তত নিজেকে বাঁচা কষ্ট এবং ব্যবহারের Tadlock এর প্লাগইন কিভাবে কি আপনি করতে পারেন শিখতে পারে।

আপনি যখন যা চান তার মতো একটি প্লাগইন তৈরি হয়ে গেলে, আপনার পোস্টের নিবন্ধকরণ ফাংশনে পতাকা এবং 'map_meta_cap'পতাকাটি পরিবর্তন করতে হবে যাতে এটি 'পোস্ট', 'পৃষ্ঠা', বা অন্য কোনও 'সংরক্ষিত' ব্যতীত অন্য কিছু বলে টাইপ করুন। এর পরে, সকল পোস্ট (উদাহরণ এর সাথে সম্পর্কিত ক্ষমতা প্রতিলিপি , , , ইত্যাদি), পোস্ট এর পরিবর্তে আপনার সামর্থ্য টাইপ ব্যবহার করে। প্রশাসকদের এই সমস্ত অনুমতি বরাদ্দ করার বিষয়টি নিশ্চিত করুন (আপনি এটি না করা পর্যন্ত আপনি পোস্টের প্রকারটি দেখতে সক্ষম হবেন না), তারপরে আপনার পোস্টের ধরণের জন্য 'অবদানকারী' ভূমিকার সক্ষমতা অনুকরণ করে আপনার ভূমিকা তৈরি করুন।true'capability_type'edit_postsedit_others_postspublish_posts

উদাহরণ হিসেবে বলা যায়, বলে আপনার সামর্থ্য টাইপ ছিল foobars, আপনি দিতে চান would 'দোকান মালিকদের edit_foobars, delete_foobarsএবং readক্ষমতা। এইভাবে তারা তাদের নিজস্ব খসড়া ফুবার তৈরি করতে পারে এবং সেই খসড়াগুলি মুছতে পারে, তবে তাদের publish_foobarsক্ষমতা নেই বলে তাদের অনুমোদনের জন্য সেগুলি জমা দিতে হবে। তাদের না edit_published_foobarsথাকায় অনুমোদিত ফুবারের সমস্ত পরিবর্তন অনুমোদিত হতে হবে।


সদস্যের অনুমতিগুলি কীভাবে কাজ করে তার একটি সংক্ষেপণ পেতে এখনই সদস্যদের প্লাগইন ব্যবহার করছি। আমি সেট করেছি 'map_meta_cap' => trueএবং 'capability_type' => 'shopowner'আমার কাস্টম পোস্ট টাইপ। আমি একটি নতুন ভূমিকা তৈরি করেছি ShopOwnerএবং এটিকে পঠন, সম্পাদনা_শোপার, মুছে ফেলা_শোপনার এর ক্ষমতা দিয়েছি। শপওউনারের ভূমিকায় একজন ব্যবহারকারীকে সেট করুন এবং সেই ব্যবহারকারীর সাথে লগ ইন করুন। সেই ব্যবহারকারী কাস্টম পোস্টের ধরণটি দেখতে পাবে না। আমি কিছু মিস করেছি?
ব্র্যাডি

2
সেই পরিবর্তন edit_shopownersএবং delete_shopownersedit_shopownerএবং delete_shopownerএমন মেটা সক্ষমতা যা বাস্তবে কখনও পরীক্ষা করা হয় না। যখন কেউ নির্দিষ্ট আইটেম সম্পাদনা বা মুছতে চেষ্টা করে এবং "এই ব্যবহারকারী এই ধরণের আইটেমগুলি মুছতে পারে? তারা কি কেবল তাদের নিজস্ব বা অন্যকেও মুছতে পারে? তারা কি প্রকাশিত আইটেমগুলি মুছতে পারে?" ইত্যাদি
জন পি ব্লচ

আমি এটির কোনও ধারণা করতে পারি না ... তবে আমার কাস্টম পোস্টের ধরণের ক্ষমতা নির্ধারণ করে এবং সদস্যদের প্লাগইনে সেই ক্ষমতাগুলি তৈরি করে আমি কার্যকারিতাটি পেয়েছি। আমি আপনাকে উত্তরগুলি পুরষ্কার করেছি কারণ আপনার পোস্টটি আমার পক্ষে একসাথে সমাধান তৈরির পক্ষে সবচেয়ে দরকারী। ধন্যবাদ
ব্র্যাডি

19

রেজিস্টার পোস্টের ধরণের "ক্ষমতা" নামে একটি প্যারামিটার রয়েছে যাতে আপনি উদাহরণস্বরূপ থাকতে পারেন

'capability' => 'organize_shop',

http://codex.wordpress.org/Function_Reference/register_post_type

নতুন ব্যবহারকারী / ভূমিকা / দক্ষতা তৈরি করতে আপনি শুরু করার জন্য একটি সাধারণ উদাহরণের জন্য add_rol, add_cap ব্যবহার করতে পারেন:

// Add the role to WordPress list of roles
// Then add the capability 'organize_shop' to the 'shop_owner' role
$role = add_role( 'shop_owner', 'Shop Owner', ['edit_posts' => true]));
$role->add_cap( 'organize_shop' );


// If 'shop_owner' already exists make `$wp_roles` visible then 
// add the capability 'organize_shop' to the 'Show Owner' role
public $wp_roles;
$wp_roles->add_cap( 'shop_owner', 'organize_shop' );

হুম ... আমি কিছুটা বিভ্রান্ত হয়ে পড়েছি 2 এবং 3 লাইনের মধ্যে পার্থক্য কী? : এস এটি কি 'শপের মালিক'র ক্ষেত্রে একই সামর্থ্য যুক্ত করে না?
দশালুন

হ্যাঁ তারা একই রকম তবে তারা এটি করার বিভিন্ন উপায় দেখায়, প্রথমটির মধ্যে প্রথম প্যারামিটার (শপের মালিক) হিসাবে ভূমিকা রয়েছে, দ্বিতীয়টি কেবল the ভূমিকা ব্যবহার করার পরে কেবল ক্যাপ।
উইক

3
আপনার কি কোনও ক্ষমতা / অনুমতি অনুবাদ করার কথা রয়েছে? এটাই __ ('');
স্বেটোস্লাভ মেরিনভ

@ স্বেটোস্লাভ মেরিনভ অনুবাদটি সরিয়ে দেওয়ার জন্য আমি উত্তরটি সম্পাদনা করেছি।
মাইকচিন্কেল

@ দশালুন এটি পরিষ্কার করার জন্য আমি উত্তর সম্পাদনা করেছি।
মাইকচিন্কেল

1

আপনি কি প্রকৃত সামগ্রী জমা দেওয়ার জন্য গ্র্যাভিটি ফর্ম বা টিডিও মিনি ফর্মগুলির দিকে নজর রেখেছেন ? তাদের প্রত্যেকের কার্যকারিতা রয়েছে যা ব্যবহারকারীর দ্বারা জমা দেওয়া সামগ্রীগুলি বুদ্ধিমানের সাথে পরিচালনা করার পথে আপনাকে রাস্তা দিয়ে ভালভাবে নামিয়ে আনবে।


জবাব দেওয়ার জন্য ধন্যবাদ তবে আমি যা খুঁজছি সেগুলি এগুলি নয়। মূলত কারণ এগুলি প্লাগইন। আমি নিজেই কার্যকারিতাটি লিখতে চাইছি তাই সবকিছুর উপর আমার সম্পূর্ণ নিয়ন্ত্রণ রয়েছে।
ব্র্যাডি

0

"অ্যাডভান্স অ্যাক্সেস ম্যানেজার" নামে একটি প্লাগইন ইনস্টল করে কীভাবে এটি অর্জন করা যায় তার একটি সহজ এবং কার্যকরী উপায়, আপনাকে কার্যকারিতাটি লিখতে হবে না তবে এখনও ব্যবহারকারীদের, ভূমিকা এবং তারা কী করতে পারে তার উপর নিয়ন্ত্রণের স্তর রয়েছে। আপনার পছন্দসই বেশিরভাগ সামগ্রী এই প্লাগইনটি দ্বারা অর্জন করা যেতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.