bbpress如果旁观者角色 - 回应文本

时间:2014-10-12 13:31:06

标签: wordpress bbpress

我正在使用WordPress的bbpress,而我正在尝试更改user-profile.phpwp-content/plugins/bbpress/includes/users/的显示方式。

如果用户具有观众角色,我想回复一条文字说“你没有参与论坛的许可”,但我无法完成它。这就是我现在所拥有的:

 <p class="bbp-user-forum-role"><?php  printf( __( 'Forum Role: %s',      'bbpress' ), bbp_get_user_display_role()    ); ?></p>
    // My php code comes here:
 if( bbp_get_spectator_role() ) {
    echo "<p>You do not have permission to participate in the forum.</p>";
    }

以上不起作用。但是,有一个名为“bbp_is_user_keymaster()”的函数。如果有一个相似但bbp_is_user_spectator()而不是{{1}},那将会很棒。但我似乎无法找到一个。

任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:0)

通过一些编辑,你应该可以使用这段代码:http://simplysmartmedia.com/2013/03/role-based-profile-fields-in-wordpress/

编辑过的代码看起来像;

    <?php
function check_user_role( $role, $user_id = null ) {
  if (isset($_REQUEST['user_id']))
    $user_id = $_REQUEST['user_id'];
// Checks if the value is a number
  if ( is_numeric( $user_id ) )
    $user = get_userdata( $user_id );
    else
    $user = wp_get_current_user();
  if ( empty( $user ) )
    return false;
  return in_array( $role, (array) $user->roles );
}

function one_random_test() {
if ( check_user_role ('spectator') ) {
    echo 'You are not allowed to edit anything.';
}
}
  add_action('bbp_template_before_user_profile', 'one_random_test');
?>

文字&#34;您不能编辑任何内容。&#34;然后出现在用户个人资料页面的顶部。使用你喜欢的任何钩子让它出现在其他地方。