在我的wordpress网站上,有一个评论模板,我在其中做了一些我想要的更改,但我遇到了问题.
注意:我正在使用用户角色编辑器插件.
我想在每个评论中显示用户名旁边的用户角色.
我的代码:
function get_the_author_role() {
global $wpdb, $wp_roles, $authordata;
if ( !isset($wp_roles) )
$wp_roles = new WP_Roles();
foreach($wp_roles->role_names as $role => $Role) {
$caps = $wpdb->prefix . 'capabilities';
if (array_key_exists($role, $authordata->$caps))
return $Role;
}
}
/**
* Echo the account role of the author of the current post in the Loop.
* @see get_the_author_role()
* @return null
*/
function the_author_role() {
echo get_the_author_role();
}
Run Code Online (Sandbox Code Playgroud)
我将此代码添加到function.php中,但它不起作用.
这是我的comment-template.php部分:
<?php printf( __( ' <cite class="user" ><font size="5.5" color=red > %s </font></cite> <span class="user"> </span>' ), get_comment_author_link() ); ?>
[ ]
<?php if ( '0' == $comment->comment_approved ) : ?>
Run Code Online (Sandbox Code Playgroud)
用户可以拥有任何角色,即管理员,编辑,作者,订阅者或任何其他角色,但应该打印用户的角色.
我希望它看起来像图片,用户角色在方括号中.
您可以使用:
//get the commented user id
$user_id = get_comment(get_comment_ID())->user_id;
if ($user_id)
{
$user_info = get_userdata($user_id );
echo implode(', ', $user_info->roles) ;
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助 :-)
| 归档时间: |
|
| 查看次数: |
836 次 |
| 最近记录: |