اگر شما صاحب وب سایت هستید احتمالا با دیدگاه های اسپم روبه رو شده اید. دیدگاه های اسپم بسیار آزار دهنده هستند و شما مطمینا دنبال راهی خواهید گشت تا از شر دیدگاه های اسپم خلاص شوید.

اگر در مورد دیدگاه های اسپم در گوگل نیز جست و جو کنید می توانید برای حل مشکل و بستن دیدگاه های اسپم افزونه های رایگان یا پولی را پیدا کنید که استفاده از آنها ممکن است نتیجه بخش باشد یا نباشد. علاوه بر این بسیاری از کاربران استفاده از افزونه را بدلیل خطرات امنیتی و یا استاندارد نبودن آنها ترجیح نمی دهند.

 

بنابراین راه حل آسان برای جلوگیری از دیدگاه اسپم چیست؟ ما در اینجا یک راه حل سریع داریم ، با اضافه کردن کدهای PHP  زیر به فایل functions.php در قالب چایلد اکسترا برای همیشه می توانید از شر دیدگاه های اسپم خلاص شوید.

 

به وب سایت خود فیلد سوال امنیتی اضافه کنید.

کافی است کد زیر را به فایل functions.php در قالب چایلد اکسترا اضافه کنید:

 

// Add security field to comments.
function xtra_add_comment_field( $fields ) {

	if ( isset( $fields['url'] ) ) {

		$num_a = rand( 1, 10 );
		$num_b = rand( 1, 10 );

		$fields['url'] = '<p class="comment-form-url"><label for="url">' . $num_a . ' + ' . $num_b . ' = ?</label><input id="url" name="url" type="text" value="" size="30" maxlength="200" /><input name="security" type="hidden" value="' . md5( $num_a + $num_b ) . '" /></p>';

	}

	return $fields;
}
add_filter( 'comment_form_default_fields', 'xtra_add_comment_field' );

// Check security field for comments.
function xtra_verify_comment_field( $commentdata ) {

	if ( ! empty( $_POST['url'] ) && ! empty( $_POST['security'] ) ) {

		if ( md5( $_POST['url'] ) !== $_POST['security'] ) {
			wp_die( 'Error: Security answer is wrong' );
		}

		$commentdata['comment_author_url'] = '';

	} else {
		wp_die( 'Error: Security answer is wrong' );
	}

	return $commentdata;
}
add_filter( 'preprocess_comment', 'xtra_verify_comment_field' );

پس از ذخیره سازی تغییرات صفحه را رفرش کنید تا تغییرات ایجاد شده را مشاهده نمایید.

 

اضافه کردن فیلد سوال امنیتی در فرم دیدگاه ها بعد از فرم های اصلی وب سایت

اما اگر می خواهید به فرم دیدگاه ها فیلد سوال امنیتی را اضافه کنید و بعد از فیلدهای اصلی فرم نمایش داده شود، می توانید از کد های زیر استفاده کنید.

 

// Add security field to comments.
function xtra_add_comment_fields( $fields ) {

	if ( isset( $fields['question'] ) ) {

		$num_a = rand( 1, 10 );
		$num_b = rand( 1, 10 );

		$fields['question'] = '<p class="comment-form-question"><label for="question">' . $num_a . ' + ' . $num_b . ' = ?</label><input id="question" name="question" type="text" value="" size="30" maxlength="200" /><input name="security" type="hidden" value="' . md5( $num_a + $num_b ) . '" /></p>';

	}

	return $fields;
}
add_filter( 'comment_form_default_fields', 'xtra_add_comment_fields' );

// Check security field for comments.
function xtra_verify_comment_field( $commentdata ) {

	if ( ! empty( $_POST['question'] ) && ! empty( $_POST['security'] ) ) {

		if ( md5( $_POST['question'] ) !== $_POST['security'] ) {
			wp_die( 'Error: Security answer is wrong' );
		}
		$commentdata['comment_author_url'] = '';
		
	} else {
		wp_die( 'Error: Security answer is wrong' );
	}

	return $commentdata;
}
add_filter( 'preprocess_comment', 'xtra_verify_comment_field' );

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *