попробуйте и скажите.
вместо
if ( empty($post_thumbnail) ) {
надо использовать что-то типа:
if ( empty($post_thumbnail) && in_category(22) ) {
Так нельзя сделать?
Есть масса удобных плагинов.
А какие плагины например? Что то ничего подобного не видел
flector так вся тема слетела
я не понимаю, когда говорят «вся тема слетела».
как могла слететь тема, если этот код в админке у вас работает?
возможно, что надо поменять in_category(22)
на in_category('22')
, если бы включили у себя debug режим и отображение php-ошибок — создавать сайт было бы намного проще.
А какие плагины например? Что то ничего подобного не видел
А искали? 🙂 https://wordpress.org/plugins/search.php?type=term&q=category+thumbnail
Все разобрался я функцию заново начинал и поэтому выдавалась ошибка. Нужно просто было в одной функции все условия прописать и все! Спасибо Вам в очередной раз flector, снова выручили 😉
P.S.: я все таки не сторонник плагинов, тем более когда задача стоит в пару строк это даже довольна таки глупо.
я все таки не сторонник плагинов,
Плагинопароноя лечится изучением матчасти 🙂
тем более когда задача стоит в пару строк это даже довольна таки глупо.
Пара строк для задачи:
для рубрики 22 миниатюру 5555
для рубрики 23 миниатюру 7777
для всех остальных оставить 8888
??
Править код (рискуя поломать и тп), вручную вписывать вместо того, что бы через админку выбрать..
Да и просто по времени это целесообразней, чем тыкнуть пару раз мышей?
Не, дело конечно хозяйское 🙂
Ида, даже свой код для этого я бы оформил в плагин. Файл функций темы не для этого.
-
Ответ изменён 7 лет, 7 месяцев назад пользователем SeVlad.
-
Ответ изменён 7 лет, 7 месяцев назад пользователем SeVlad.
У меня возникла новая проблема, вот код:
add_action('save_post', 'my_template_thumbnail');
function my_template_thumbnail($post_id) {
$post_thumbnail = get_post_meta($post_id, $key = '_thumbnail_id', $single = true);
if ( !wp_is_post_revision($post_id) ) :
if ( empty($post_thumbnail) ) {
update_post_meta($post_id, $meta_key = '_thumbnail_id', $meta_value = '8316');
}
if ( empty($post_thumbnail) && in_category(176) ) {
update_post_meta($post_id, $meta_key = '_thumbnail_id', $meta_value = '8995');
}
if ( empty($post_thumbnail) && in_category(175) ) {
update_post_meta($post_id, $meta_key = '_thumbnail_id', $meta_value = '8496');
}
if ( empty($post_thumbnail) && in_category(177) ) {
update_post_meta($post_id, $meta_key = '_thumbnail_id', $meta_value = '9015');
}
endif;
}
Из за вот этой строчки
if ( empty($post_thumbnail) ) {
всегда выводится автоматом миниатюра 8316
даже когда категории 175,176,177
А как сделать чтобы всегда выводилась картинка 8316, но когда категории 175,176,177 то и миниатюры соответственные??
if ( empty($post_thumbnail) && !in_category(array(175,176,177)) ) {