سلام خسته نباشید من این کد رو دارم فقط میشه یه کلمه رو محدود کرد نمیشه کاری کرد که بسه چندتارو باهم محدود کرد
add_action('comment_post', 'my_comment_post_callback', 10, 3);
function my_comment_post_callback($comment_id, $comment_approved, $commentdata) {
if (strpos($commentdata['comment_content'],'ali') !== false) {
$post_url = get_permalink($commentdata['comment_post_ID']);
wp_delete_comment($comment_id, true);
wp_redirect($post_url);
exit;
}
}
مثلان در کامنت نوشته باسه ali نمایش داده نمیشه ولی میخوام بیشتر محدود کنم ممنون میشم کمکم کنید
سلام
کلمات مورد نظر خودتون رو باید داخل یک آرایه قرار بدید و از رجکس استفاده کنید.
متد زیر این کار رو براتون میکنه
function contains($commentString, Array $blackListArray, $caseInsensitive = false) {
$exp = '/'
. implode('|', array_map('preg_quote', $blackListArray))
. ($caseInsensitive ? '/i' : '/');
return preg_match($exp, $commentString) ? true : false;
}
سلام خسته نباشید ممنون ولی من متوجه نشدم الان میخوام کلمه علی محدود بشه و کامنت خودکار حذف بشه باید کلمه علی رو بزارم کجایی این کدی که شما دادین
@mohammadafrozei1395
مثلا شما ميخواييد بفهميد در كامنت شما كمله Ali و چند كلمه ديگه وجود داره يا نه، اينجوري ميتونيد از متد بالا استفاده كنيد.
$comment = $commentdata['comment_content'];
$blackList = ['Ali','Reza'];
if($this->contains($comment,$blackList,true)){
//شامل كلمات بلك ليست هست در اينجا ميتونيد كامنت رو حذف كنيد
}
@mehranmarandi
سلام ببخشید میشه کاملش کنید من کپیش کنم بزارمش تو فانکشن سایتم ممنون میشم اخه زیاد ازش سر درنمیارم
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟