Как в WordPress создать список запрещенных слов в заголовках?

Если Вы владелец многоавторского блога, то, наверное, было бы неплохо как-то обезопасить своих авторов от допущения ошибок. Например, исключить в названиях статей те или иные слова.

Как в WordPress создать список запрещенных слов в заголовках?

Отметим, что стандартные средства WordPress не позволяют добиться чего-либо подобного. Поэтому для решения задачи необходимо прибегнуть к сторонним решениям. Воспользуемся специальным PHP-кодом, который даст возможность выдать автору сообщение, которое будет указывать, что в названии публикуемой статьи содержатся запрещенные к использованию одно или несколько слов. Для этого в файл functions.php Вашей активной темы следует добавить следующие строки.

function wpschool_forbidden_words_title( $title ) {
    global $post;
    $title = $post->post_title;
    $restricted_words = "бабочка;кузнечик";
    $restricted_words = explode( ";", $restricted_words );
 
    foreach( $restricted_words as $restricted_word ) {
        if ( stristr( $title, $restricted_word ) )
        wp_die( __( 'Ошибка: Вы используете запрещенные слова в заголовке: "'. $restricted_word ) );
    }
}
add_action( 'publish_post', 'wpschool_forbidden_words_title', 10, 1 );

Если Вы не знаете, как редактировать functions.php, то в этом случае Вам поможет плагин ProFunctions.

В коде, в строке “$restricted_words = «бабочка;кузнечик»;”, перечислены запрещенные слова. Для примера создадим запись с названием “Название записи — кузнечик”. В нашем списке присутствует слово “кузнечик”, которое мы указали как запрещенное. После того, как будет нажата кнопка Опубликовать, автор увидит следующее сообщение:

Ошибка публикации поста

Курс WordPress-разработчик
Если Вам понравилась статья — поделитесь с друзьями
Михаил Петров