WordPress发表评论只需输入评论者名称
默认WordPress 发表评论只能同时设置”必须填入姓名和电子邮件地址“,如果认为输入电子邮件会影响评论者的感受,可以通过修改程序文件,让评论者只需要输入姓名即可。
以WordPress 4.6为例,打开WP程序wp-includes目录的comment.php文件,在大约第2886行找到:
- if ( get_option( ‘require_name_email’ ) && ! $user->exists() ) {
- if ( 6 > strlen( $comment_author_email ) || ” == $comment_author ) {
- return new WP_Error( ‘require_name_email’, __( ‘<strong>ERROR</strong>: please fill the required fields (name, email).’ ), 200 );
- } elseif ( ! is_email( $comment_author_email ) ) {
- return new WP_Error( ‘require_valid_email’, __( ‘<strong>ERROR</strong>: please enter a valid email address.’ ), 200 );
- }
- }
替换为:
- if ( get_option( ‘require_name_email’ ) && ! $user->exists() ) {
- if ( ” == $comment_author )
- return new WP_Error( ‘require_name_email’, __( ‘<strong>错误</strong>:请填写您的名称!’ ), 200 );
- }
进入WP后台→设置→讨论→其他评论设置中勾选”评论作者必须填入姓名和电子邮件地址“,完成上面的修改后,再次发表评论时只需要填写姓名一项就可以了。
但只到这步还是不太完美,因为评论表单中还有”电子邮件“和”站点“项,会让人产生误会,所以,还需要将这俩表单去掉,修改主题模板文件比较麻烦,直接用CSS隐藏。
以WordPress默认主题Twenty Sixteen为例,查看网页原代码,发现”电子邮件“和”站点“两项的DIV选择器是.comment-form-email和.comment-form-url,将下面的样式代码添加到主题样式文件style.css的最后:
- .comment-form-email, .comment-form-url{
- display: none;
- }
添加上面代码后,”电子邮件“和”站点“两个表单被隐藏,只剩下名称一项。
如果你的主题使用了Ajax comments评论提交代码,修改方法相似,找到当前主题目录中的comment-ajax.php模板文件,找到类似代码:
- if ( get_option(‘require_name_email’) && !$user->ID ) {
- if ( 6 > strlen($comment_author_email) || ” == $comment_author )
- err(‘<i class=“fa fa-exclamation-circle”></i>提示:必须填写昵称及邮件。’); // 将 wp_die 改为错误提示
- elseif ( !is_email($comment_author_email))
- err(‘<i class=“fa fa-exclamation-circle”></i>提示:请输入一个有效的电子邮件地址。’);// 将 wp_die 改为错误提示
- }
同样用上面的代码替换即可。
喜欢上面修改方法的基本都是新站新手,网站无留言评论,想别人到自己网站留言想疯了,认为什么都不用填写直接就可以留言,就会有人来留言,网站留言未设置任何条件,当有一天被垃圾留言盯上,就知道什么是异想天开了….