默认情况下,WordPress 允许在评论中包含某些 HTML 标签,例如 等。如果您注意到很多垃圾邮件评论也包含这些标签。大多数垃圾邮件评论是由使用 HTML 标记的机器人和脚本编写的。如果您只是从 WordPress 评论中禁用 HTML,它可以防止大量垃圾邮件。在本教程中,我们将向您展示如何在 WordPress 评论中禁用 HTML 标签。
本教程只会禁用活动的 HTML 标签。所以有人仍然可以发布类似的内容:
它会出现,但标签将不起作用。所以如果有人使用 strong 标签,它不会加粗文本。此外,没有多少垃圾邮件机器人有时间这样做,因为这种方式会占用大量时间,而且对他们没有好处。
您所要做的就是打开您的functions.php并添加以下代码:
// This will occur when the comment is posted function plc_comment_post( $incoming_comment ) { // convert everything in a comment to display literally $incoming_comment[‘comment_content’] = htmlspecialchars($incoming_comment[‘comment_content’]); // the one exception is single quotes, which cannot be #039; because WordPress marks it as spam $incoming_comment[‘comment_content’] = str_replace( “‘”, ‘'’, $incoming_comment[‘comment_content’] ); return( $incoming_comment ); } // This will occur before a comment is displayed function plc_comment_display( $comment_to_display ) { // Put the single quotes back in $comment_to_display = str_replace( ‘'’, “‘”, $comment_to_display ); return $comment_to_display;}
如果你不想自己手动添加这段代码,那么原作者还提供了一个插件,你可以下载。只需安装并激活Peter 的 Literal Comments插件。
这种方式更好的原因是它不需要您更改核心文件。如果你想编辑你的核心文件,那么你可以去wp-includes/kses.php并在那里编辑代码。(这不是推荐的,但为了知识而在这里。(WP Codex了解更多详细信息)