晚上有朋友问我,说 Alu 插件造成了他评论表单文本域混乱,评论内容在上面,而昵称,邮箱等信息跑到了下面。这个现象我平时浏览别人博客的时候就发现了。由于登录状态不显示昵称邮箱信息,所以站长很难发现这个变化。
原因是 WordPress 4.4 重写了 comment_form 这个函数,对输出顺序进行了调整,所以才会出现这个现象。这个现象只有在评论表单使用 comment_form 函数输出的时候才会出现,如果是自己写的表单肯定不会出现这个问题。
查看 comment_form 这个函数的文档,发现并没有调整位置这个参数,进而查看源代码,发现在组装表单的时候提供了一个 comment_form_fields 钩子,我们可以用这个来重新调整位置。
下面的代码加到 functions.php 中即可
function recover_comment_fields($comment_fields){
$comment = array_shift($comment_fields);
$comment_fields = array_merge($comment_fields ,array(‘comment’ => $comment));
return $comment_fields;
}
add_filter(‘comment_form_fields’,’recover_comment_fields’);
WordPress 4.4 更新的内容还是蛮多的,有很多地方都和以前不一样了,你可以选择习惯成自然,或者恢复成以前的样子,看你个人喜好罢了 (BY BIGFA) 。