1. Wordpress如何显示所有用户的评论
WordPress大多主题在用户登录下,评论框上也会显示一句:Logged in as XXX,它同样也能让已登录用户显示头像,效果如下:
实现WordPress评论框显示已登录用户头像
先来看看WordPress默认主题里关于已登录用户提示的这个代码段(comments.php):
Logged in as .
那怎么显示头像呢?这儿直接用 get_avatar() 可是获取不到当前登录用户的头像的,原因也显然,没指定登录用户的邮箱撒,所以得借助一个WordPress函数: get_currentuserinfo
改造后的代码段:
user_email, 35); ?>
Logged in as .
当然,这个 get_currentuserinfo 包含的可不止邮箱一个信息,更多内容还请各位童鞋自个儿看WordPress官方文档咯,懂点E文还是相当有用处的!
2. 如何设置让WordPress用户每篇文章评论一次
实现代码,放到当前主题的functions.php中即可(这里还增加了对IP的判断,更保险):// 获取评论用户的ip,参考wp-includes/comment.phpfunction ludou_getIP() { $ip = $_SERVER['REMOTE_ADDR']; $ip = preg_replace( '/[^0-9a-fA-F:., ]/', '', $ip ); return $ip;}function ludou_only_one_comment( $commentdata ) { global $wpdb; $currentUser = wp_get_current_user(); // 不限制管理员发表评论 if(empty($currentUser->roles) || !in_array('administrator', $currentUser->roles)) { $bool = $wpdb->get_var("SELECT comment_ID FROM $wpdb->comments WHERE comment_post_ID = ".$commentdata['comment_post_ID']." AND (comment_author = '".$commentdata['comment_author']."' OR comment_author_email = '".$commentdata['comment_author_email']."' OR comment_author_IP = '".ludou_getIP()."') LIMIT 0, 1;"); if($bool) wp_die('本站每篇文章只允许评论一次。
点此返回'); } return $commentdata;}add_action( 'preprocess_comment' , 'ludou_only_one_comment', 2。
3. WordPress各用户角色都有哪些权限
订阅者:只能修改自己的个人资料,例如昵称、联系信息、密码等等。
2
投稿者:具有订阅者的所有权限。可以发表文章,发表的文章需要经过管理员审核后才能在博客上显示出来,但可以预览效果。对待审中的文章可以编辑,但对已通过审核的文章不能编辑,可以查看所有站内评论,但不能对评论进行编辑。
3
作者:具有投稿者的所有权限。可以编辑已通过审核的文章,发表文章不需要审核,可以使用媒体库。
4
编辑:具有作者的所有权限。可以对文章标签、分类进行管理,可以管理友情链接,可以编辑评论,可以添加或编辑页面,还可以编辑待审中的文章,但编辑后仍然处于待审状态。实际上,编辑只是不具备外观、插件、用户、设置和备份这些选项的操作。
5
管理员:具有admin的所有权限,包括删除admin!不能随便给他人这个权限,这个不用具体说也知道啦。
4. wordpress怎么让注册用户不显示待审核的评论
这个问题确实有点难度,评论这块现在也弄得少,基本都用第三方的了。
按您的要求,除administrator外,都是注册用户,所以可以在当前皮肤的functions.php中做如下判断:
if ( ! is_super_admin() ){//非管理员
//blablabla。
}
然后将待审、垃圾评论、已回收的评论信息不显示。这可以对get_comments函数提供的pre_get_comments钩子进行设置,比如:
add_action( 'pre_get_comments', 'dit_hide_some_comments', 999 );
function dit_hide_some_comments( $comments ){
$comments->query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
return $comments;
}
这时如果注册用户查看回收站时,又要只能显示当前用户自己的。所以还要增加点判断
function dit_hide_some_comments( $comments ){
$status = $comments->query_vars['status'];
if ( 'trash' == $status ) {//当用户选择显示回收站时,将ID添加进筛选条件
global $current_user;
$comments->query_vars['user_id'] = $current_user->ID;
}else {
$comments->query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
}
return $comments;
}
所以,最后放在functions.php中的代码片段整合如下:
if ( ! is_super_admin() ){//非管理员
add_action( 'pre_get_comments', 'dit_hide_some_comments', 999 );
function dit_hide_some_comments( $comments ){
$status = $comments->query_vars['status'];
if ( 'trash' == $status ) {//当用户选择显示回收站时,将ID添加进筛选条件
global $current_user;
$comments->query_vars['user_id'] = $current_user->ID;
}else {
$comments->query_vars['status'] = 'approve'; //获取评论信息时只显示已审核批准的。
}
return $comments;
}
}哎呀,屁股坐得有点痛喽。该躺下休息了。代码您先行测试,有问题再继续交流哈。
5. WordPress各用户角色都有哪些权限
方法/步骤订阅者:只能修改自己的个人资料,例如昵称、联系信息、密码等等。
投稿者:具有订阅者的所有权限。可以发表文章,发表的文章需要经过管理员审核后才能在博客上显示出来,但可以预览效果。
对待审中的文章可以编辑,但对已通过审核的文章不能编辑,可以查看所有站内评论,但不能对评论进行编辑。作者:具有投稿者的所有权限。
可以编辑已通过审核的文章,发表文章不需要审核,可以使用媒体库。编辑:具有作者的所有权限。
可以对文章标签、分类进行管理,可以管理友情链接,可以编辑评论,可以添加或编辑页面,还可以编辑待审中的文章,但编辑后仍然处于待审状态。实际上,编辑只是不具备外观、插件、用户、设置和备份这些选项的操作。
管理员:具有admin的所有权限,包括删除admin!不能随便给他人这个权限,这个不用具体说也知道啦。
转载请注明出处51数据库 » wordpress管理员评论