วิธีสร้างบทบาทผู้ใช้ที่กำหนดเองใน WordPress

เผยแพร่แล้ว: 2021-02-06

เมื่อสร้างเว็บไซต์ด้วย CMS เรายินดีต้อนรับความยืดหยุ่นเสมอ โชคดีที่ WordPress มีมากกว่าแค่การแบ่งปัน ด้วยธีมและปลั๊กอินที่ช่วยให้เราสร้างประสบการณ์ที่ปรับแต่งได้สูง

แต่ความยืดหยุ่นของมันนั้นมากกว่าแค่สิ่งพิเศษที่เราสามารถติดตั้งได้ มันถูกรวมเข้ากับแกนกลางของซอฟต์แวร์จริงๆ

ความสามารถในการสร้างบทบาทของผู้ใช้ที่กำหนดเองเป็นตัวอย่างที่ชัดเจน วันนี้ เราจะมาดูกันว่ามันคืออะไร เหตุใดคุณจึงต้องการใช้ และเทคนิคต่างๆ สองสามอย่างในการสร้างสิ่งเหล่านี้

Fine Grain ควบคุมการอนุญาตของผู้ใช้

ในการติดตั้ง WordPress ทุกครั้ง คุณมีสิทธิ์เข้าถึงบทบาทผู้ใช้เริ่มต้นที่เลือกไว้แล้ว ช่วยให้เราสามารถกำหนดสิ่งที่ผู้ใช้สามารถทำได้และไม่สามารถทำได้ในส่วนหลัง (aka Dashboard) ของเว็บไซต์

นี้ทำให้ความรู้สึกที่สมบูรณ์แบบ ไม่ใช่ทุกคนที่จัดการเนื้อหาจำเป็นต้องมีสิทธิ์ระดับผู้ดูแลระบบ ดังนั้นเราจึงสามารถกำหนดบทบาทให้กับผู้ใช้แต่ละคนได้ตามความต้องการ เป็นมาตรการรักษาความปลอดภัยที่ยอดเยี่ยมและสามารถป้องกันเหตุร้ายหรือแม้แต่ผู้ติดตั้งปลั๊กอินได้ดียิ่งขึ้น

สิ่งนี้ยังใช้ได้กับส่วนหน้าเช่นกัน หากคุณต้องการให้ผู้ใช้ที่เข้าสู่ระบบเห็นเฉพาะเนื้อหา คุณสามารถสร้างฟังก์ชันนี้ลงในธีมของคุณหรือเพิ่มผ่านปลั๊กอินสำหรับสมาชิกได้

แต่ในขณะที่บทบาทผู้ใช้เริ่มต้น (ผู้ดูแลระบบ ผู้แก้ไข ผู้เขียน ผู้ร่วมให้ข้อมูล และสมาชิก) จะมีประโยชน์ แต่ก็มีบางครั้งที่คุณต้องการการควบคุมเพิ่มเติม นั่นเป็นเหตุผลที่ WordPress ให้ความสามารถในการสร้างบทบาทของคุณเอง

เมื่อใดควรใช้บทบาทที่กำหนดเอง

บทบาทผู้ใช้ที่กำหนดเองมีประโยชน์ในหลายสถานการณ์ ต่อไปนี้คือปัญหาทั่วไปบางประการที่คุณอาจเผชิญ:

คุณมีผู้ใช้ที่จัดการเนื้อหาประเภทต่างๆ

ตามค่าเริ่มต้น WordPress มาพร้อมกับเนื้อหาที่เปิดเผยต่อสาธารณะสองประเภท: โพสต์และเพจ แต่เพิ่มได้ง่ายยิ่งขึ้นด้วยการใช้ประเภทโพสต์ที่กำหนดเอง ตัวอย่างเช่น คุณอาจสร้างประเภทโพสต์สำหรับสิ่งต่างๆ เช่น ข่าวประชาสัมพันธ์หรือพนักงาน นอกจากนี้ ปลั๊กอินต่างๆ อาจติดตั้งประเภทโพสต์ของตนเองได้เช่นกัน

องค์กรขนาดใหญ่อาจมีเนื้อหาหลายประเภท โดยคำนึงถึงบุคคลที่ต้องการจัดการแต่ละเนื้อหา ในกรณีนี้ บทบาทของผู้ใช้เริ่มต้นจะไม่เหมาะ เนื่องจากอาจให้การเข้าถึงทั้งล็อต (หรือตรงกันข้าม ขึ้นอยู่กับการตั้งค่าของคุณ) อย่างไรก็ตาม บทบาทที่กำหนดเองจะอนุญาตให้ผู้ใช้ที่แตกต่างกันเห็นเฉพาะประเภทโพสต์ที่คุณกำหนดเท่านั้น

ผู้ใช้ต้องทำสิ่งเดียวเท่านั้น

มีบางครั้งที่ผู้ใช้อาจต้องการระดับการเข้าถึงคุณลักษณะเฉพาะบนเว็บไซต์ของคุณ ตัวอย่างเช่น สมมติว่าคุณเปิดหลักสูตรออนไลน์ คุณอาจมีสมาชิกในทีมที่ต้องการเข้าถึงทั้งหลักสูตรที่ส่วนหน้าและส่วนหลังเพื่อให้แน่ใจว่าทำงานได้อย่างถูกต้องและเนื้อหาถูกต้อง

หากสมาชิกในทีมต้องโฟกัสที่ตัวหลักสูตรเอง บัญชีผู้ดูแลระบบอาจใช้เกินความจำเป็น ด้วยบทบาทผู้ใช้ที่กำหนดเอง พวกเขาสามารถทำงานได้โดยไม่ต้องลุยผ่านตัวเลือกที่ไม่จำเป็นใดๆ

คุณต้อง “ยกระดับ” บทบาทที่มีอยู่

บางครั้ง บทบาทผู้ใช้ WordPress ที่มีอยู่ก็เกือบจะสมบูรณ์แบบ แต่อาจมี สิ่งหนึ่งที่ ผู้ใช้ต้องการเข้าถึงเป็นพิเศษ

รับบทบาทผู้เขียน โดยค่าเริ่มต้น พวกเขาสามารถเผยแพร่โพสต์ได้ แต่ไม่ใช่เพจ โดยปกติ คุณจะต้องชนผู้ใช้ถึง Editor นั่นอาจจะดีในบางกรณี อย่างไรก็ตาม อาจมีความสามารถอื่นๆ ที่คุณไม่ต้องการให้ผู้ใช้รายนี้เข้าถึงได้ ที่นี่ การสร้างบทบาทที่กำหนดเองอาจเป็นตัวเลือกที่ดีที่สุด

วิธีสร้างบทบาทผู้ใช้ที่กำหนดเอง

มีสองวิธีในการสร้างบทบาทผู้ใช้ WordPress ที่กำหนดเอง อย่างแรกคือการเพิ่มโค้ดลงในปลั๊กอินที่กำหนดเองหรือไฟล์ functions.php ของธีมของคุณ อย่างที่สองคือการติดตั้งปลั๊กอินที่มีอยู่มากมายซึ่งช่วยให้คุณสร้างและแก้ไขบทบาทได้

วิธีที่คุณใช้ขึ้นอยู่กับความชอบส่วนบุคคล หากคุณต้องการความสามารถในการเลือกและเลือกความสามารถของผู้ใช้ในลักษณะที่มองเห็นได้ ปลั๊กอินเหมาะสมที่สุด แต่ถ้าคุณพอใจกับโค้ดและ/หรือไม่ต้องการให้ผู้ดูแลระบบคนอื่นเล่นการตั้งค่า การเพิ่มข้อมูลโค้ดอาจเหมาะสำหรับคุณ

ไม่ว่าจะด้วยวิธีใด เราจะให้คุณเริ่มต้นด้วยตัวอย่างโค้ดและปลั๊กอินต่างๆ

อันดับแรก ขอแนะนำให้คุณศึกษาเกี่ยวกับความสามารถของผู้ใช้ต่างๆ ที่ WordPress นำเสนอ โปรดทราบว่าประเภทโพสต์ที่กำหนดเองสามารถมีความสามารถที่กำหนดเองได้เช่นกัน สิ่งนี้มีประโยชน์ในสถานการณ์ตัวอย่างแรกที่เรากล่าวถึงข้างต้น

วิธีที่ #1: เพิ่มโค้ด Snippet

ในตัวอย่างนี้ เราจะสร้างบทบาทของผู้ใช้ชื่อ “Staff Member” ซึ่งรวมถึงความสามารถทั้งหมดของบทบาทผู้เขียน แต่มีความสามารถเพิ่มเติมในการแก้ไขและเผยแพร่หน้า

ความสามารถแต่ละอย่างที่เรากำหนดให้กับบทบาทนั้นจะแสดงอยู่ในตัวอย่างด้านล่างและตั้งค่าเป็น " จริง " ข้อยกเว้นในที่นี้คือ เราไม่ต้องการให้ผู้ใช้ที่มีบทบาทนี้ลบหน้าที่เผยแพร่ ดังนั้นเราจึงตั้งค่านี้เป็น " เท็จ " อย่างชัดแจ้ง - เพื่อความปลอดภัย

อีกครั้ง โค้ดนี้จะไปอยู่ในไฟล์ functions.php ของธีมของคุณ หรือจะใส่ลงในปลั๊กอินที่กำหนดเองก็ได้

 /* Create Staff Member User Role */ add_role( 'staff_member', // System name of the role. __( 'Staff Member' ), // Display name of the role. array( 'read' => true, 'delete_posts' => true, 'delete_published_posts' => true, 'edit_posts' => true, 'publish_posts' => true, 'upload_files' => true, 'edit_pages' => true, 'edit_published_pages' => true, 'publish_pages' => true, 'delete_published_pages' => false, // This user will NOT be able to delete published pages. ) );

เมื่อเราบันทึกรหัสนี้และรีเฟรชเว็บไซต์ของเราในเบราว์เซอร์แล้ว เราสามารถเพิ่มผู้ใช้ใหม่ที่มีบทบาทนี้

WordPress เพิ่มหน้าจอผู้ใช้ใหม่

เมื่อผู้ใช้ของเราที่มีบทบาทสมาชิกพนักงานเข้าสู่ระบบ พวกเขาสามารถเห็นทั้งหน้าและโพสต์

ผู้ใช้ที่เข้าสู่ระบบจะเห็นโพสต์และเพจ

อีกทางเลือกหนึ่งคือการเพิ่มความสามารถบางอย่างให้กับบทบาทผู้เขียนที่มีอยู่ เราสามารถทำได้โดยใช้ add_cap() :

 /* Upgrade the Author Role */ function author_level_up() { // Retrieve the Author role. $role = get_role( 'author' ); // Let's add a set of new capabilities we want Authors to have. $role->add_cap( 'edit_pages' ); $role->add_cap( 'edit_published_pages' ); $role->add_cap( 'publish_pages' ); } add_action( 'admin_init', 'author_level_up');

ข้อมูลโค้ดทั้งสองนี้ทำสิ่งเดียวกันโดยพื้นฐานแล้ว อย่างไรก็ตาม การเพิ่มบทบาท Staff Member ใหม่อาจดีที่สุดในกรณีที่คุณมีผู้ใช้ที่มีบทบาทผู้เขียนอยู่แล้วและไม่ต้องการให้ผู้ใช้มีความสามารถพิเศษ

วิธีที่ 2: ใช้ Plugin

ฟังก์ชันการทำงานข้างต้นสามารถจำลองแบบได้อย่างง่ายดายผ่านการใช้ปลั๊กอิน มีการสร้างหลายรายการสำหรับบทบาทผู้ใช้ประเภทนี้และการจัดการความสามารถ พวกเขาเสนอข้อได้เปรียบในการใช้ GUI และเพิ่มระดับความสะดวกสบายให้กับกระบวนการทั้งหมด

มาดูตัวเลือกยอดนิยมบางส่วนกัน:

ตัวแก้ไขบทบาทของผู้ใช้

ด้วย User Role Editor การเพิ่มหรือลบความสามารถสำหรับบทบาทนั้นง่ายพอๆ กับการเลือกหรือยกเลิกการเลือกช่องในการตั้งค่า คุณยังมีความสามารถในการสร้างบทบาทผู้ใช้ที่กำหนดเองและตั้งค่าความสามารถที่จำเป็น ปลั๊กอินนี้ยังรองรับการติดตั้ง WordPress หลายไซต์อีกด้วย

ตัวแก้ไขบทบาทผู้ใช้ WPFront

WPFront User Role Editor มีความสามารถที่คล้ายคลึงกัน ทำให้คุณสามารถเพิ่มหรือแก้ไขบทบาทของผู้ใช้ได้ แต่ยังช่วยให้ผู้ดูแลระบบสามารถย้ายผู้ใช้จากบทบาทหนึ่งไปยังอีกบทบาทหนึ่ง และกำหนดบทบาทหลายบทบาทให้กับผู้ใช้แต่ละราย

ตัวจัดการการเข้าถึงขั้นสูง

หากคุณกำลังมองหาบางสิ่งที่มีขอบเขตที่กว้างขึ้น Advanced Access Manager อาจเป็นทางเลือกที่ดีสำหรับคุณ มันมีการจัดการบทบาทและความสามารถ บวกกับความสามารถในการควบคุมการเข้าถึงคุณสมบัติส่วนหน้าและส่วนหลัง เช่น เมนูและวิดเจ็ต

รู้จักบทบาทของคุณ

ความสามารถในการสร้างบทบาทของผู้ใช้แบบกำหนดเองเป็นอีกเหตุผลหนึ่งที่ทำให้รัก WordPress เป็นสิ่งที่เฉพาะเจาะจงมาก แต่ก็มีประโยชน์อย่างยิ่งเมื่อคุณต้องการบางสิ่งที่นอกเหนือไปจากบทบาทเริ่มต้น

ดังนั้น ครั้งต่อไปที่คุณพบว่าตัวเองอยู่ในสถานการณ์ที่จำเป็นต้องควบคุมความสามารถของผู้ใช้ ให้รู้ว่าคุณมีเครื่องมืออันทรงพลังนี้พร้อมใช้