Могу ли я установить изображение по умолчанию для категории?
Я создаю сайт с темой, которая использует преимущества функции "избранное изображение" WordPress. Поскольку мои конечные пользователи не являются самыми технологичными в мире, я хотел бы настроить все так, чтобы в категориях по умолчанию для публикации было назначено "избранное изображение". В случае, если должности назначено несколько категорий, то она просто займет первую.
Существует ли существующий плагин или способ его кодирования?
5 answers
В вашем шаблоне, в котором отображается показанное изображение: <?php the_post_thumbnail( 'thumbnail' ); ?>
вы можете сделать его зависимым от того, установлено ли показанное изображение, а затем установить его по умолчанию на то, что вы хотите, если оно не установлено.
Один из способов сделать это - поместить все изображения по умолчанию в каталог и присвоить им имена для категорий, например. news.jpg и reviews.jpg затем вместо использования <?php the_post_thumbnail( 'thumbnail' ); ?>
для отображения вашего избранного изображения вы бы использовали следующее:
<?php
if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail()) ) {
the_post_thumbnail('thumbnail');
} else { ?>
<img src="whatever/directory/<?php $category = get_the_category(); echo $category[0]->cat_name; ?>.jpg" /> <?php }
endif;
} ?>
Итак, в приведенном выше примере, если сообщение находится в новостях категория, и ваш автор не установил рекомендуемое изображение, по умолчанию оно будет соответствовать изображению, хранящемуся в http://www.yoursite/whatever/directory/news.jpg
.
<?php if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail())) : ?>
<?php the_post_thumbnail('thumbnail'); ?>
<?php else :?>
<img src="<?php bloginfo('template_directory'); ?>/your image directory name in theme folder/<?php $category = get_the_category(); echo $category[0]->cat_name; ?>.jpg" />
<?php endif;?>
Я столкнулся с некоторыми проблемами с именами категорий, в которых есть пробелы, я немного изменил приведенный выше код, чтобы он соответствовал моим потребностям
<?php if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail())) : ?>
<?php the_post_thumbnail('thumbnail'); ?>
<?php else :?>
<img src="whatever/directory/<?php $category = get_the_category(); echo $category[0]->cat_ID; ?>.jpg" />
<?php endif;?>
В основном просто измените
echo $category[0]->cat_name;
До
echo $category[0]->cat_ID;
Который сделает ваш образ 16.jpg или 3.jpg все, что соответствует номеру вашей категории.
Более чистый способ сделать вышесказанное;)
if ( ( function_exists( 'has_post_thumbnail' ) ) && ( has_post_thumbnail() ) ) :
the_post_thumbnail( 'thumbnail' );
else :
?><img src="whatever/directory/<?php
$category = get_the_category(); echo $category[0]->cat_name;
?>.jpg" /><?php
endif;
Я успешно использовал Изображения таксономии Майкла Филдса - он добавляет функции управления на страницу редактирования категории/таксономии, так что показанные изображения работают для таксономий так же, как и для сообщений/страниц. Имеет все функции, необходимые для вашей тематики.