محدود کردن اندازه متن نظرات در وردپرس

بخش دیدگاه ها یکی از راه های ارتباط با مخاطب است. این بخش می تواند باعث تعامل بیشتر و شکل گرفتن جامعه مخاطب شود. اما همیشه همه دیدگاه ها مفید نیستند. مثلا دیدگاه های یک کلمه ای بی فایده یا دیدگاه های خیلی خیلی طولانی که عموما اسپم هستند.
دیدگاه های بسیار کوتاه معمولا فقط برای گرفتن لینک ارسال می شوند. برخی از آن ها هم خیلی بلند هستند و هیچ ارتباطی با مطلب اصلی ندارند. بعضی ها هم صرفا شکایت های بی ربط هستند که فضای گفت و گو را از بین می برند.
اگر می خواهید کیفیت گفت و گو در سایت خود را بالا ببرید باید حداقل و حداکثر طول متن دیدگاه ها را مشخص کنید. اما وردپرس به صورت پیش فرض این امکان را ندارد.
در حال حاضر وردپرس به طور پیش فرض گزینه ای برای تنظیم طول دیدگاه ندارد. اما این کار به راحتی با یک قطعه کد قابل انجام است. پیشنهاد ما استفاده از افزونه Code Snippets است تا بدون آسیب به قالب وردپرس این کد را وارد کنید.
مراحل محدود کردن طول دیدگاه در وردپرس
اول افزونه Code Snippets را نصب و فعال کنید. بعد از نصب از منوی مدیریت وردپرس وارد بخش Snippets شوید و گزینه افزودن کد جدید را انتخاب کنید.
حالا قطعه کد زیر را وارد و ذخیره کنید
add_filter( 'preprocess_comment', 'smartwp_limit_comment_length' );
function smartwp_limit_comment_length( $comment ) {
if ( strlen( $comment['comment_content'] ) > 6000 ) {
wp_die('متن دیدگاه خیلی طولانی است باید کمتر از ۶۰۰۰ کاراکتر باشد');
}
if ( strlen( $comment['comment_content'] ) < 50 ) {
wp_die('متن دیدگاه خیلی کوتاه است باید حداقل ۵۰ کاراکتر باشد');
}
return $comment;
}
در این کد عدد ۶۰۰۰ نشان دهنده حداکثر طول مجاز دیدگاه و عدد ۵۰ حداقل تعداد کاراکتر مورد نیاز است. می توانید این اعداد را به دلخواه خود تغییر دهید. همچنین می توانید این کد را در انتهای فایل functions.php قالب خود هم قرار دهید. اما استفاده از از افزونه Code Snippets حرفه ای تر است.
فعال کردن محدودیت برای صفحات خاص
اگر نمی خواهید این محدودیت برای تمام سایت اعمال شود می توانید از منطق شرطی استفاده کنید. در افزونه Code Snippets گزینه ای به نام Conditional Logic وجود دارد. با فعال کردن آن می توانید مشخص کنید که کد فقط در بعضی صفحات فعال باشد.
مثلا اگر بخواهید محدودیت فقط روی یک نوشته خاص اعمال شود می توانید از کد زیر استفاده کنید
add_filter( 'preprocess_comment', 'smartwp_limit_comment_length' );
function smartwp_limit_comment_length( $comment ) {
$specific_post_id = 123;
if ( get_the_ID() == $specific_post_id ) {
if ( strlen( $comment['comment_content'] ) > 6000 ) {
wp_die('متن دیدگاه خیلی طولانی است باید کمتر از ۶۰۰۰ کاراکتر باشد');
}
if ( strlen( $comment['comment_content'] ) < 50 ) {
wp_die('متن دیدگاه خیلی کوتاه است باید حداقل ۵۰ کاراکتر باشد');
}
}
return $comment;
}
به جای عدد ۱۲۳ باید شناسه نوشته دلخواه خود را وارد کنید
این کد به چه دردی می خورد؟
با محدود کردن طول دیدگاه ها می توانید از ارسال دیدگاه های بی کیفیت جلوگیری کنید. این کار باعث می شود تعامل کاربران مفیدتر و هدفمندتر شود.
همچنین بخش نظرات سایت فضای بهتری برای تبادل نظر خواهد داشت. بدون نیاز به هیچ افزونه پیچیده ای فقط با یک قطعه کد ساده می توانید تجربه کاربران را بهبود دهید و اعتبار سایت را افزایش دهید.