Тема WooCommerce Storefront Создание нескольких шаблонов категорий
Опубликовано: 2020-10-12Во многих интернет-магазинах принято использовать разные шаблоны для категорий, тегов, пользовательских типов сообщений и таксономий. Если вы используете разные шаблоны для категорий, вы можете добавить определенные функции на страницы категорий. Например, вы можете добавлять изображения категорий, отображать описание категорий, разрешать пользователям подписываться на категории и выбирать разные макеты для каждой категории.
Тема WooCommerce Storefront Создание нескольких шаблонов категорий
В этом кратком руководстве я покажу вам, как создавать шаблоны категорий в вашем магазине WooCommerce.
Иерархия шаблонов для страниц категорий
В WordPress есть мощная система шаблонов, которая позволяет создавать темы, используя разные шаблоны для разных разделов сайта. При отображении любой страницы WordPress ищет шаблон в заранее определенном иерархическом порядке. Например, чтобы отобразить страницу категории, он ищет шаблоны в следующем порядке:
category-slug.php > category-id.php > category.php > archive.php > index.php
Первый шаблон, который он будет искать, — это шаблон, специфичный для этой конкретной категории, с использованием ярлыка категории. Шаблон category-design.php будет использоваться для отображения категории «Дизайн». Однако, если он не находит шаблон ярлыка категории, WordPress будет искать шаблон идентификатора категории.
Затем он будет искать общий шаблон категории, обычно это category.php. Однако, если общего шаблона категории нет, WordPress будет искать общий шаблон архива.
После этого он будет использовать шаблон index.php для отображения категории.
Как создать шаблон категории
Типичный шаблон category.php выглядит так:
<?php /** * Простой шаблон категории */ получить_заголовок(); ?> <section id="основной" класс="контент сайта"> <div ID="контент" роль="основной"> <?php // Проверяем, есть ли посты для отображения если ( have_posts() ) : ?> <header class="архив-заголовок"> <h1 class="archive-title">Категория: <?php single_cat_title( '', false ); ?></h1> <?php // Показать необязательное описание категории если (категория_описание()) : ?> <div class="archive-meta"><?php echo category_description(); ?></дел> <?php конец; ?> </заголовок> <?php // Петля в то время как ( have_posts() ): the_post(); ?> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Постоянная ссылка на <?php the_title_attribute(); ?>"><?php the_title(); ?></а></h2> <small><?php the_time('F jS, Y') ?> от <?php the_author_posts_link() ?></small> <div класс="запись"> <?php the_content(); ?> <p class="postmetadata"><?php comments_popup_link('Комментариев пока нет', '1 комментарий', '% комментариев', 'комментарии-ссылка', 'Комментарии закрыты'); ?></p> </div> <?php в конце; иначе: ?> <p>К сожалению, нет сообщений, соответствующих вашим критериям.</p> <?php конец; ?> </div> </раздел> <?php get_sidebar(); ?> <?php get_footer(); ?>
Предположим, что у вас есть категория «Классическая одежда» с ярлыком категории «классная», и вы хотите отображать эту категорию иначе, чем другие. Этого результата можно достичь, создав шаблон для этой конкретной категории.
Для этого перейдите в « Внешний вид» > «Редактор». Справа вы увидите несколько файлов темы. Нажмите на archive.php . Если его там нет, ищите category.php . Однако, если вы используете тему Storefront, вы найдете archive.php .
Скопируйте все содержимое файла archive.php и вставьте его в текстовый редактор, например Блокнот. Сохраните этот файл как category-design.php.
Следующим шагом будет переход в wp-content > Themes > Storefront theme . Загрузите файл category-design.php в каталог вашей темы.
Стоит отметить, что любые изменения, которые вы вносите в этот шаблон, будут отображаться только на странице архива этой конкретной категории. Вы можете использовать эту технику для создания шаблонов для любого количества категорий. Вам просто нужно использовать category-{category-slug}.php в качестве имени файла. Ярлыки категорий находятся в разделе категорий в административной области WordPress.
Это еще один пример шаблона category-slug.php. Это то же самое, что и шаблон category.php, с небольшими изменениями:
<?php /** * Простой шаблон категории */ получить_заголовок(); ?> <section id="основной" класс="контент сайта"> <div ID="контент" роль="основной"> <?php // Проверяем, есть ли посты для отображения если ( have_posts() ) : ?> <header class="архив-заголовок"> <?php // Поскольку этот шаблон будет использоваться только для категории «Дизайн» // мы можем добавить название и описание категории вручную. // или даже добавить изображения или изменить макет ?> <h1 class="archive-title">Статьи о дизайне</h1> <div class="архив-мета"> Статьи и учебные пособия о дизайне и Интернете. </div> </заголовок> <?php // Петля в то время как ( have_posts() ): the_post(); <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Постоянная ссылка на <?php the_title_attribute(); ?>"><?php the_title(); ?></а></h2> <small><?php the_time('F jS, Y') ?> от <?php the_author_posts_link() ?></small> <div класс="запись"> <?php the_excerpt(); ?> <p class="postmetadata"><?php comments_popup_link('Комментариев пока нет', '1 комментарий', '% комментариев', 'комментарии-ссылка', 'Комментарии закрыты'); ?></p> </div> <?php в конце; // Конец цикла иначе: ?> <p>К сожалению, нет сообщений, соответствующих вашим критериям.</p> <?php конец; ?> </div> </раздел> <?php get_sidebar(); ?> <?php get_footer(); ?>
Однако, если вы не хотите использовать шаблон ярлыка категории, вы можете использовать шаблон идентификатора категории, чтобы создать шаблон для определенного идентификатора категории.
Как использовать условные теги для категории
Когда вы создаете шаблоны для своей темы, вы должны быть уверены, что вам нужен дополнительный шаблон. Это связано с тем, что в некоторых случаях вы хотите сделать не слишком сложными и могут быть достигнуты с помощью условных тегов внутри общего шаблона.
WordPress поддерживает множество условных тегов. Одним из них является условный тег is_category(). Вы можете использовать его, чтобы изменить свои шаблоны для отображения другого вывода, если условие соответствует. Например, вы можете захотеть отобразить дополнительную информацию на странице архива категории для категории. Для этого просто добавьте этот код в файл category.php сразу после <?php if ( have_posts() ) : ?>.
<header class="архив-заголовок"> <?php if(is_category('Избранное')) : ?> <h1 class="archive-title">Избранные статьи:</h1> <?php иначе: ?> <h1 class="archive-title">Архив категорий: <?php single_cat_title(); ?> </h1> <?php конец; ?> </заголовок>
Вывод
В этом посте я подчеркнул, что вы можете использовать разные шаблоны для категорий, тегов, пользовательских типов сообщений и таксономий. Более того, я поделился иерархией шаблонов, которые используются в WordPress для страниц категорий.
Кроме того, я показал вам, как создать шаблон категории и как использовать условные теги для категории.
Похожие статьи
- Как добавить пользовательские типы сообщений в виджет панели инструментов WordPress «с первого взгляда»
- Как создать пользовательский тип записи в WordPress без плагина
- Как добавить содержимое по умолчанию в редактор пользовательских типов сообщений
- Как добавить контент до или после the_content и в пользовательских типах сообщений
- Как удалить или скрыть комментарии в произвольном типе сообщений » Отключить комментарии в произвольных типах сообщений
- Как создать пагинацию WordPress для пользовательских типов записей
- Как удалить или отключить автозапуск в сообщениях WordPress и пользовательских типах сообщений