PHP if else 条件给出 500 内部服务器错误

PHP if else condition giving 500 internal server error

我正在使用一些代码向编辑器显示 link 来编辑特定页面

但它导致 用户 未登录[=23] 的 500 个内部服务器 错误 =]

我是初学者,需要即时帮助 我的代码是

<?php
      global $current_user, $wpdb;
      $role = $wpdb->prefix . 'capabilities';
      $current_user->role = array_keys($current_user->$role);
      $ncaps = count($current_user->role);
      $role = $current_user->role[$ncaps - 1];


    if ($role ==  "editor") {
    echo  '<div class="user-tips">

<h4><u>Edit Equity Market</u></h4>
<h5><a href="abc.com/wp-admin/post.php?post=215&action=edit"><button class="btn btn-primary btn-sm">Edit Intraday Tips</button></a></h5>
<h5><a href="abc.com/wp-admin/post.php?post=221&action=edit"><button class="btn btn-primary btn-sm">Edit Positional Tips</button></a></h5>
<h4><u>Edit Commodity Market</u></h4>
<h5><a href="abc.com/wp-admin/post.php?post=220&action=edit"><button class="btn btn-primary btn-sm">Edit Commodity Tips</button></a></h5>


</div>';
    }

    else {
    echo "";
}
?>

提前致谢

尝试使用函数 is_user_logged_in():

<?php
if ( is_user_logged_in() && current_user_can('edit_others_pages') ) {
    echo  '<div class="user-tips">
    <h4><u>Edit Equity Market</u></h4>
    <h5><a href="abc.com/wp-admin/post.php?post=215&action=edit"><button class="btn btn-primary btn-sm">Edit Intraday Tips</button></a></h5>
    <h5><a href="abc.com/wp-admin/post.php?post=221&action=edit"><button class="btn btn-primary btn-sm">Edit Positional Tips</button></a></h5>
    <h4><u>Edit Commodity Market</u></h4>
    <h5><a href="abc.com/wp-admin/post.php?post=220&action=edit"><button class="btn btn-primary btn-sm">Edit Commodity Tips</button></a></h5>
    </div>';
}
?>

编辑:我还稍微改进了角色检查。其他见 Roles and Capabilities