function filter_post( $data , $postarr ) {
if (!preg_match("/\bsomething\b/i", $data['post_title']))
$data['post_status'] = 'draft';
return ( $data );
}
add_filter ( 'wp_insert_post_data' , 'filter_post' , '99', 2 );
Если слово что-то не появляется в тексте заголовка, оно становится черновиком, иначе оно публикуется нормально.Просто измените ключевое слово, и оно должно работать.