در تاپیک قبلی از بی تاک، نحوه غیرفعال کردن تبدیل خودکار آدرس های اینترنتی به لینک قابل کلیک در سایت وردپرسی را آموزش دادیم. راه دیگر برای جلوگیری از نظرات اسپم و یا سوء استفاده از بخش نظرات سایت ما به عنوان مخزن دریافت بک لینک ها یا خرابکاری های اسپمرها، جلوگیری از تبدیل خودکار کدهای HTML به خروجی های قابل دید است. کدی که در این تاپیک قصد معرفی داریم، کدهای HTML در متن نظرات ارسالی را بررسی و شناسایی کرده و مانع از اجرای آن کد خواهد شد و یا اگر کدهای ارسالی به قصد خرابکاری در سایت باشد آن نظر را بعنوان اسپم علامت گذاری خواهد کرد.

انجام اینکار نیاز به اقدامات خاص و پیچیده ای ندارد و تنها کافیست کد زیر را در فایل functions.php
قالبتان قرار دهید:
// This will occur when the comment is posted
function betalk_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 betalk_comment_display( $comment_to_display ) {
// Put the single quotes back in
$comment_to_display = str_replace( ''', "'", $comment_to_display );
return $comment_to_display;
}
add_filter( 'preprocess_comment', 'betalk_comment_post', '', 1);
add_filter( 'comment_text', 'betalk_comment_display', '', 1);
add_filter( 'comment_text_rss', 'betalk_comment_display', '', 1);
add_filter( 'comment_excerpt', 'betalk_comment_display', '', 1);