Как запретить публикацию записей без установленных миниатюр?
Очень многие темы для WordPress заточены под обязательное использование миниатюр записей, но при этом они не умеют (да и не хотят) требовать обязательной установки миниатюр при публикации записей. Это досадное недоразумение вполне можно исправить, заставив движок не публиковать записи без установленной миниатюры. Подобные записи без установленных миниатюр будут сохранены в черновики, чтобы их авторы могли исправить недоработку позднее. Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:
//требование обязательной установки миниатюры записи start function wph_require_featured_image($post_id) { $post = get_post($post_id); if($post->post_status == 'publish' && !has_post_thumbnail($post_id)) { $post->post_status = 'draft'; wp_update_post($post); $message = '<p>Запись не опубликована, так как не была установлена миниатюра записи!</p><p><a href="' . admin_url('post.php?post=' . $post_id . '&action=edit') . '">Вернуться назад и установить миниатюру</a></p>'; wp_die($message, 'Ошибка - отсутствует миниатюра!'); } } add_action('save_post', 'wph_require_featured_image', -1); //требование обязательной установки миниатюры записи end |
Используйте условный тег is_category, если обязательная установка миниатюр требуется не для всех рубрик сайта.
А как сделать чтобы записи без миниатюры добавлялись не в черновик, а сразу же УДАЛЯЛИСЬ НАВСЕГДА?