wordpress防止管理员被冒充,让管理员评论与众不同
php相关 /
2011年02月03日 00时08分 /
47809人浏览
WordPress默认并不会审核评论到底是不是博主发表的,如果有人知道博主的昵称和Email ,那么它使用这个昵称和Email,就可以成功的冒充博主发表评论,进而可能会欺骗其他访客。我测试了3种方法可以解决这个问题。
第一种 禁止访客用管理员的昵称或email 进行评论
修改评论回调函数用到的文件是function.php 如果主题有自己的评论文件则修改主题中的 如:本站修改主题中的comments-ajax.php
WordPress 3.0版本
用文本编辑器打开WordPress安装目录下的wp-comments-post.php,将以下代码(大概在70行左右):
if ( get_option('comment_registration') || 'private' == $status )
wp_die( __('Sorry, you must be logged in to post a comment.') ); |
替换成:
if ('管理员昵称' == $comment_author || '管理员邮箱' == $comment_author_email)
wp_die('呵呵, 开玩笑吗?');
if ( get_option('comment_registration') || 'private' == $status )
wp_die( __('Sorry, you must be logged in to post a comment.') );
WordPress 2.9.2版本
用文本编辑器打开WordPress安装目录下的wp-comments-post.php,查找并将以下代码(63行左右):
if ( get_option('comment_registration') || 'private' == $status->post_status )
wp_die( __('Sorry, you must be logged in to post a comment.') );
替换成:
if ('管理员昵称' == $comment_author || '管理员邮箱' == $comment_author_email)
wp_die('呵呵, 开玩笑吗?');
if ( get_option('comment_registration') || 'private' == $status->post_status )
wp_die( __('Sorry, you must be logged in to post a comment.') );
以后博主要发表评论的话,请先登录。
效果图:
第二种 为管理员账号添加(管理员)注释
修改评论回调函数用到的文件是function.php
找到<div class="comment-author">
在后面添加
<?php if($comment->user_id == 1) echo " <span style='color:#666' title='lostphp.com'>(<span style='color:#FF3333'>管理员</span>)</span>" ?>
如:
|
效果图:
由于主题不一样,所以评论作者那里的代码也写的不太一样,一般的代码是
评论作者的标准代码:
<?php comment_author(); ?>
评论的ID:
<?php comment_ID(); ?>
评论的作者:
<?php comment_author(); ?>
评论者的链接:
<?php comment_author_link(); ?>
第三种 为管理员添加标签
先下载标签
修改评论回调函数用到的文件是function.php
找到<div class="comment-author">
在后面添加
<?php if($comment->user_id == 1) echo "<div class='admin'><img src='http://lostphp.com/wp-content/uploads/2011/02/admin1.gif'></div>" ?>
图片可以换成自己的路径,不换也可以
效果图: