Tạo Nhóm Phân Quyền Cho Thành Viên Trong Wordpress

Khi tạo một trang web với mục đích kiếm tiền từ những người đăng ký làm thành viên thì việc phân quyền cụ thể cho từng nhóm thành viên sẽ rất quan trọng. Ví dụ thành viên đăng ký trên web mà không cần tốn tiền thì vào nhóm Free và không có nhiều chứ năng quan trọng, còn thành viên có tốn một khoản phí thì có những ưu tiên đặc biệt hơn như đăng bài không cần chờ Admin duyệt.

Cách đơn giản nhất để làm điều này đó là sử dụng plugin, nhưng nếu bạn biết chút xíu về code và có máu muốn khẳng định cái tôi cá nhân thì hiển nhiên cái này là lựa chọn của bạn rồi.

Ví dụ bạn muốn tạo thêm 1 group Free member thì bạn chỉ cần thêm đoạn code dưới đây vào trong file function.php

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

Sau đó lưu lại và kiểm tra tại mục role trong add user sẽ thấy được thêm một group “Free User”



Ngoài ra nếu bạn không muốn tạo thêm một group mới mà chỉ muốn thêm quyền cho những group đã có sẵn thì sử dụng đoạn code dưới đây để thêm vào trong function.php

/* 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');

Lựa chọn cách làm nào thì tùy theo suy nghĩ và mong muốn của riêng từng người.

Bonus thêm:

Nếu tạo group mà không dùng nữa thì dùng đoạn code remove_role( ‘free_member’ ) để xóa group vừa tạo đi

Đăng nhận xét

0 Nhận xét