Если вы ведете блог или сайт на WordPress, на котором, кроме вас, есть еще авторы, то возможно вам будет нужно установить минимальное количество слов в статье. Слишком короткие статьи не всегда приветствуются поисковиками. В этой статье я покажу вам маленький код, который позволит установить минимум слов для нового поста. Если пользователь попытается опубликовать пост с коротким контентом, то он увидит ошибку с надписью, о том слишком мало слов было написано.
Все что вам нужно для этого сделать, добавить такой код в файл темы functions.php:
function minimum_words( $content ){ global $post; $content = $post->post_content; if ( str_word_count($content) < 300 ) // минимум 300 слов (примерно 1500 символов) wp_die( 'Ошибка: текст вашей записи содержит мало слов (меньше 300). Допишите его, для этого нажмите кнопку Backspace на клавиатуре или вернитесь назад в браузере. Извините за неудобства!' ); } add_action( 'publish_post', 'minimum_words' );
В этом примере ограничение установлено на 300 слов, что примерно составляет 1500 символов. К примеру, это количество расценивается Яндексом как минимум для того чтобы добавить текст в "оригинальные тексты" Яндекса.
Вообще, лучше делать такую проверку не на PHP а на JavaScript, чтобы после нажатия кнопки "опубликовать" пользователя не перекидывала на страницу с ошибкой, а ошибка выводилась как javascript сообщение. Ведь если автора перекинет на новую страницу, то по возвращении обратно, он может потерять текст, который уже написал. В прочем в WordPress эти моменты хорошо продуманы и там есть автосохранения. Но если кто либо знает как сделать такое на Javascript, буду очень признателен, если поделитесь в комментариях.
Спасибо, все очень просто и понятно!