簡體   English   中英

根據使用PHP在wordpress中登錄的user = role顯示內容

[英]show content based on logged in user=role in wordpress with PHP

我的工作正常:

<?php global $user_login; get_currentuserinfo();
if ($user_login) :?>
<li><a href="<?php echo get_site_url(); ?>/wp-admin/admin.php?page=download_report&download_report">Download Inventory of Mobile Apps</a></li>
<?php endif; ?>

但是我試圖根據登錄的用戶ROLE更改它以顯示此特定內容。 因此,基本上,例如如果角色is = administrator顯示,或者如果不是隱藏其他所有登錄用戶,則類似。

|||| 如何更改當前代碼以編寫if語句,以檢查登錄的用戶角色,然后檢查特定角色(例如admin)是否顯示內容; 如果不躲起來?

失敗日志: 最近:

<?php global $user_login; get_currentuserinfo();
if( is_user_logged_in() ) {
            if( !current_user_can( 'administrator' ) ) { :?>
<li><a href="<?php echo get_site_url(); ?>/wp-admin/admin.php?page=download_report&download_report">Download Inventory of Mobile Apps</a></li>
<?php endif; ?>

最近:

<?php 
global $user_login, $current_user; 
get_currentuserinfo();
$user_info = get_userdata($current_user->ID);
if (in_array('administrator', $user_info->roles)) {

<li><a href="<?php echo get_site_url(); ?>/wp-admin/admin.php?page=download_report&download_report">Download Inventory of Mobile Apps</a></li>
    }
?>  

也許像這樣:

<?php
global $user_login, $current_user;

if (is_user_logged_in()) {
    get_currentuserinfo();
    $user_info = get_userdata($current_user->ID);

    if (in_array('administrator', $user_info->roles)) {
        // content
    }
}
?>

結合您最近的代碼:

<?php 
global $user_login, $current_user; 

if (is_user_logged_in()) {
    get_currentuserinfo();
    $user_info = get_userdata($current_user->ID);
    if (in_array('administrator', $user_info->roles)) { 
?>    
<li><a href="<?php echo get_site_url(); ?>/wp-admin/admin.php?page=download_report&download_report">Download Inventory of Mobile Apps</a></li>
<?php
    }
}
?>  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM