2010-08-17 31 views

Trả lời

9

Tôi giả sử bạn biết móc của Wordpress bạn muốn sử dụng. Vì vậy, bỏ qua phần đó, thật dễ dàng để có được vai trò hiện tại của người dùng

$current_user = wp_get_current_user(); 
if (!($current_user instanceof WP_User)) 
    return; 
$roles = $current_user->roles; //$roles is an array 

Bây giờ, bạn có thể lặp qua mảng đó để xem liệu người dùng có vai trò cụ thể hay không.

Hoặc, bạn có thể sử dụng current_user_can để tìm các khả năng cụ thể, nếu bạn chỉ muốn kiểm tra xem người dùng có quyền cụ thể hay không trong vai trò của họ. Ví dụ:

if (current_user_can('delete_posts')) { 
    //display the delete posts button. 
} 
+0

Tuyệt vời! Đây chỉ là những gì tôi đang tìm kiếm! :) Cảm ơn! Bằng cách này, mà móc tôi phải sử dụng cho mã này? –

+0

Tôi sẽ lưu save_post – villecoder

+0

Lưu ý rằng codex WP ngày nay tuyên bố: "Không chuyển tên vai trò cho' current_user_can() ', vì điều này không đảm bảo hoạt động chính xác". – Robbert

0

Mã này sẽ giúp bạn

<?php echo array_shift(wp_get_current_user()->roles); ?> 
+0

Bạn có thể xin expalin về cách nó sẽ giải quyết vấn đề? – Phani

Các vấn đề liên quan