WordPress Roles and Capabilities – Default and Custom

WordPress Roles and Capabilities – जैसाकि पिछले Section में हमने देखा कि WordPress हमें User System के साथ प्रक्रिया करने के लिए विभिन्न प्रकार के API Functions के माध्‍यम से एक काफी Flexible System Provide करता है। WordPress के इस User System द्वारा हम किसी Individual User से सम्बंधित Data को Access व Manipulate करने की सुविधा प्राप्त करते हैं।

लेकिन केवल इन्हीं के द्वारा WordPress इस बात को तय नहीं करता कि कोई User किसी WordPress Site/Blog में क्‍या कर सकता है और क्‍या करने की Permission उसे नहीं है। इस स्थिति के लिए WordPress Roles and Capabilities System से सम्बंधित API Functions Provide करता है, जिनका प्रयोग करके विभिन्न प्रकार के Users को विभिन्न प्रकार के कामों से सम्बंधित Permissions Provide किए जाते हैं।

WordPress System में विभिन्न प्रकार के Users को उनके WordPress System को Access करने की Limitations को Roles द्वारा Represent किया जाता है। किसी User को जो Permissions Provide की जाती हैं, उन Permissions को उस User की Capabilities के नाम से जाना जाता है।

Roles को अन्‍य शब्दों में हम WordPress System में User Groups के रूप में भी Identify कर सकते हैं। WordPress में Roles Hierarchical नहीं होते। उदाहरण के लिए Administrator Role वाला User, Editor Role वाले User से “Higher” Category का User नहीं होता। बल्कि WordPress में Roles द्वारा इस बात को तय किया जाता है कि कोई Particular Role वाला User, WordPress System में किन-किन Operations को Perform करने के लिए अधिकृत है।

जबकि Capabilities को Permission System के रूप में Identify किया जा सकता है। WordPress में विभिन्न प्रकार के Roles को विभिन्न प्रकार की Capabilities Assign की जाती हैं, जिनके माध्‍यम से ये तय होता है कि किसी Specific Role वाला User किन Operations को Perform कर सकता है और किन्हें नहीं। हम हमारी जरूरत के अनुसार WordPress में किसी Particular Role को Default Capabilities Assign कर सकते हैं अथवा अपनी जरूरत के अनुसार बिल्कुल नया Role Create कर सकते हैं।

चूंकि किसी WordPress System में हजारों Users हो सकते हैं, इसलिए हर User को अलग से Capabilities Assign करना लगभग असम्भव काम है। इसीलिए WordPress में Roles के Concept को Implement किया गया है और जो भी Capabilities Assign करनी होती हैं, वे Roles को Assign की जाती हैं जबकि हर User किसी Particular Role को Assign किया जाता है।

इस प्रकार से विभिन्न प्रकार के Users की Roles के आधार पर Grouping की जाती है और जरूरत के अनुसार किसी Particular Role की Capabilities को Increase या Decrease करने के साथ ही उस Role से सम्बंधित सभी Users की Capabilities भी Automatically Increase या Decrease हो जाती हैं।

Users, RolesCapabilities की आपसी Relationship को समझना किसी भी WordPress Plugin Developer के लिए काफी महत्वपूर्ण होता है। Users सामान्‍यत: किसी WordPress Site पर एक Registered Account को Represent करते हैं। हर User का Role इस बात को निश्चित करता है कि वह User क्‍या कर सकता है और क्‍या नहीं कर सकता।

Roles वास्तव में User को Assign किए जाने वाले Sets of Capabilities को Represent करते हैं और किसी Particular User को एक से ज्यादा Roles Assign किए जा सकते हैं, जिनके आधार पर एक ही User अलग-अलग तरह के Operations Perform करने की Capabilities प्राप्त कर सकता है। जबकि Capabilities किसी Particular Role की Permissions होते हैं, जो कि उस Role की Capabilities के माध्‍यम से User की Capabilities को निश्चित करते हैं।

ज्यादातर परिस्थितियों में एक Plugin Developer के रूप में हमें इस बात की ज्यादा चिन्ता करने की जरूरत नहीं होती है कि किसी Particular User को कौनसे Role के अन्तर्गत क्‍या Capabilities प्राप्त हैं। बल्कि ज्यादातर Plugins में हम सीधे ही Capabilities को Target करते हैं। जो-जो User उस Particular Capability को Satisfy करते हैं, वे सभी Users उस Capability से सम्बंधित Task को पूरा कर सकते हैं। फिर वह Capability किसी भी Role से Associated क्यों न हो, इस बात से Plugin Developer को कोई फर्क नहीं पडता। यानी Plugin Develop करते समय किसी Particular Task को पूरा करने के लिए हमें Capabilities को Check करना चाहिए, Role को नहीं।

Default Roles

WordPress में Default रूप से 5 Roles Exist होते हैं, जो कि लगभग ज्यादातर WordPress Installations के लिए पर्याप्त होते हैं। हालांकि WordPress में Roles Hierarchical नहीं होते, लेकिन फिर भी WordPress के Default Roles को हम एक Hierarchical System के रूप में Represent कर सकते हैं, जो कि निम्नानुसार है:

Administrator Role वाले सभी Users के पास WordPress Blog/Site को Control करने से सम्बंधित सारे अिधकार होते हैं। जिसके अन्तर्गत सामान्‍यत: निम्न Capabilities होती हैं:

  • activate_plugins
  • delete_others_pages
  • delete_others_posts
  • delete_pages
  • delete_plugins
  • delete_posts
  • delete_private_pages
  • delete_private_posts
  • delete_published_pages
  • delete_published_posts
  • edit_dashboard
  • edit_files
  • edit_others_pages
  • edit_others_posts
  • edit_pages
  • edit_posts
  • edit_private_pages
  • edit_private_posts
  • edit_published_pages
  • edit_published_posts
  • edit_theme_options
  • export
  • import
  • list_users
  • manage_categories
  • manage_links
  • manage_options
  • moderate_comments
  • promote_users
  • publish_pages
  • publish_posts
  • read_private_pages
  • read_private_posts
  • read
  • remove_users
  • switch_themes
  • upload_files
  • create_product

जब WordPress को Single Site के रूप में ही Install किया गया होता है, तब केवल Single Site के Administrator को ही निम्न Capabilities प्राप्त होती हैं, जबकि Multisite Mode में केवल Super Admin को ही ये Capabilities प्राप्त होती हैं:

  • update_core
  • update_plugins
  • update_themes
  • install_plugins
  • install_themes
  • delete_themes
  • edit_plugins
  • edit_themes
  • edit_users
  • create_users
  • delete_users
  • unfiltered_html

Editor Role वाले User के पास WordPress System में Exist किसी भी Page/Post के Content को Edit या Publish करने से सम्बंधित सारे अिधकार होते हैं। इस Role वाले User के पास निम्न Capabilities होती हैं:

  • delete_others_pages
  • delete_others_posts
  • delete_pages
  • delete_posts
  • delete_private_pages
  • delete_private_posts
  • delete_published_pages
  • delete_published_posts
  • edit_others_pages
  • edit_others_posts
  • edit_pages
  • edit_posts
  • edit_private_pages
  • edit_private_posts
  • edit_published_pages
  • edit_published_posts
  • manage_categories
  • manage_links
  • moderate_comments
  • publish_pages
  • publish_posts
  • read
  • read_private_pages
  • read_private_posts
  • unfiltered_html (not with Multisite. See Unfiltered MU)
  • upload_files

Author Role वाले User के पास WordPress System में Exist स्वयं के किसी भी Page/Post के Content को Edit या Publish करने से सम्बंधित सारे अिधकार होते हैं। इस Role वाले User के पास निम्न Capabilities होती हैं:

  • delete_posts
  • delete_published_posts
  • edit_posts
  • edit_published_posts
  • publish_posts
  • read
  • upload_files

Contributor Role वाले User के पास WordPress System में नया Post Submit करने का तो अिधकार होता है, लेकिन उसे Publish करने का अिधकार नहीं होता। इस Role वाले User के पास निम्न Capabilities होती हैं:

  • delete_posts
  • edit_posts
  • read

Subscriber Role वाले User के पास WordPress System में केवल स्वयं के Dashboard व User Profile को Edit करने का अिधकार होता है। इस Role वाले User के पास निम्न Capabilities होती हैं:

  • read

हालांकि ये पांचों Roles WordPress के Default Roles हैं। फिर भी Plugin User, Role Management नाम का Plugin Use करके अलग-अलग तरह के Roles के लिए अलग-अलग तरह की Capabilities को Reset कर सकते हैं।

हालांकि जब हम WordPress को Multisite Mode में Use करते हैं, तब इन पांच Roles के अलावा Super Admin नाम का एक और Role Create होता है, जिसके पास सारी Capabilities होती हैं, जो कि किसी Administrator Role वाले User के पास भी नहीं होती। यानी Super Admin के पास निम्नानुसार कुछ Extra Capabilities भी होती हैं:

  • manage_network
  • manage_sites
  • manage_network_users
  • manage_network_plugins
  • manage_network_themes
  • manage_network_options

सामान्‍यत: ये Capabilities केवल तभी Exist होती हैं, जब WordPress को Multisite Mode में Use किया जाता है। इस प्रकार से Roles व Capabilities को हम कुछ निम्नानुसार तरीके से भी चित्रों के माध्‍यम से भी Represent कर सकते हैं:

इन CapabilitiesRoles के बारे में और ज्यादा Detail से जानने के लिए हम WordPress के http://codex.wordpress.org/Roles_and_Capabilities Codes को उपयोग में ले सकते हैं।

Custom Roles

WordPress हमें Custom Roles Create करने की सुविधा भी Provide करता है, जिसे Plugin या Theme द्वारा Create किया जा सकता है। हालांकि WordPress के Admin Panel में ऐसा कोई User Interface नहीं है, जिसका प्रयोग करके नया Role Create किया जा सके, लेकिन कई ऐसे Role Management Plugins हैं, जिनके माध्‍यम से हम WordPress System में नया Role Create कर सकते हैं।

कई बार हमें Custom Roles Create करने की जरूरत निश्चित रूप से पडती है। उदाहरण के लिए यदि WordPress System को एक Forum की तरह Modify करना चाहते हैं, तो उस स्थिति में Forum को Manage करने वाले Users को अलग-अलग Capabilities के साथ निम्नानुसार कुछ Roles Create करने की जरूरत पड सकती है:

  • Forum Administrator
  • Forum Moderator
  • Forum Member
  • Forum Suspended
  • Forum Subscribers
  • Forum Readers

WordPress हमें Roles Customize करने के लिए भी कुछ API Functions Provide करता है, जिनके माध्‍यम से हम अलग-अलग तरह की जरूरतों के लिए अलग-अलग Capabilities से युक्त अलग-अलग Roles Create कर सकते हैं। लेकिन Roles Customization करने से सम्बंधित API Functions को समझने से पहले हमें WordPress System के Access Limits को समझना जरूरी है।

WordPress get_user_meta - User Metadata Management
WordPress User Permissions

WordPress in Hindi - BccFalna.comये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Advance WordPress in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी है, तो निश्चित रूप से ये EBook भी आपके लिए काफी उपयोगी साबित होगी।

Advance WordPress in Hindi | Page: 835 | Format: PDF

BUY NOW GET DEMO REVIEWS