Для того чтобы сделать сайт красивым и интересным мы можем создать уникальный дизайн для записей, относящихся к определенной категории. Так например все посты из категории «games» будут иметь красный заголовок, посты из категории «news» зеленый, а все остальные черный. Помогут нам в этом условия «if else» в PHP. Чтобы это реализовать дизайн постов по категориям нам необходимо залезть в файл index.php в нашей WordPress теме и найти приблизительно такой код:
<?php if ( have_posts() ) : ?> <?php while ( have_posts() ) : the_post(); ?>
Сразу после этого кода в вашей теме должна быть прописана подобная функция вывода контента:
<?php get_template_part( 'content', get_post_format() ); ?>
Или вместо нее здесь могут быть отдельно прописаны функции вывода миниатюр записей, их заголовков и текстов. Например что-то такое:
<?php the_post_thumbnail(); ?> <?php the_title(); ?> <?php the_content(); ?>
В любом случае нам нужно найти код, который формирует запись на сайте и провести над ним небольшие манипуляции. Сперва перед функцией вывода контента мы пропишем условие, благодаря которому будем определять относится ли пост к категории «games» и если это так, то цвет заголовка будет красный :
<?php if (in_category('games')) : ?> <?php the_post_thumbnail(); ?> <div style="color: red"><?php the_title(); ?></div> <?php the_content(); ?>
Далее проверим относится ли пост к категории «news» и если это так, то цвет заголовка станет зеленым:
<?php if (in_category('games')) : ?> <?php the_post_thumbnail(); ?> <div style="color: red;"><?php the_title(); ?></div> <?php the_content(); ?> <?php elseif (in_category('news')) : ?> <?php the_post_thumbnail(); ?> <div style="color: green;"><?php the_title(); ?></div> <?php the_content(); ?> <?php else : ?> <?php the_post_thumbnail(); ?> <?php the_title(); ?> <?php the_content(); ?> <?php endif; ?>
В конце пропишем условие <?php else : ?>. Если пост не будет относиться ни к одной из нужных нам категорий то цвет его заголовка будет стандартным без применения стиля. В результате мы можем немного сократить наш код, записав его так:
<?php the_post_thumbnail(); ?> <?php if (in_category('games')) : ?> <div style="color: red;"><?php the_title(); ?></div> <?php elseif (in_category('news')) : ?> <div style="color: green;"><?php the_title(); ?></div> <?php else : ?> <?php the_title(); ?> <?php endif; ?> <?php the_content(); ?>