Intereting Posts
Как добавить Редактировать | Удалить кнопку в строках? Показать все типы сообщений в одной таблице сообщений Вопрос о WXR Главная страница / Статическая страница Просмотр страниц посетителей после этого следует ограничить Как создать сообщения (а не шаблон публикации), которые будут отображаться на странице проектов? перенаправить старый тип почтового адреса на новый URL-адрес структуры Как добавить тег H4 к фильтру the_content (после содержимого)? Добавление таксономии до пользовательского типа сообщения Скрытие сообщений – WP Hide Post не работает Как настроить несколько таксономий для групп должностей Можно ли назначить шаблон настраиваемому типу сообщений? Чрезмерная память, используемая update_option () Изменение параметров виджета с помощью функции.php, когда нет крючков Предотвратите «nofollow» от вставки в сообщения BBPress single-{post_type} .php не работает

Таксономия WordPress и пользовательский класс архива

Я хочу добавить пользовательский класс. Но архивные и пользовательские таксономии выполняются одновременно. Когда я хочу добавить класс к странице таксономии, также добавляется класс архива. Я понимаю, что таксономия – это один вид архива. Но я не хочу добавлять класс архива в таксономию. Как добавить класс таксономии?

Мой подход к этому

function fotogruf_layout_class(){ if (is_search()) { echo $search_layout_class; } if( (is_post_type_archive('gallery')) || (taxonomy_exists('gallery_category')) ){ echo $gallery_layout_class; } if (is_archive()) { echo $archive_layout_class; } } 

Страница поиска работает нормально. Но таксономия также добавляет класс из класса архива. Я не хочу добавлять класс архива на страницу таксономии.

Добавьте еще один уровень условия в ваш is_archive() , чтобы ваш класс архива был is_archive() только тогда, когда другие два не верны:

 function fotogruf_layout_class(){ if ( is_search() ) { echo $search_layout_class; } if ( (is_post_type_archive('gallery') ) || ( taxonomy_exists('gallery_category') ) ){ echo $gallery_layout_class; } if ( is_archive() ) { if ( ( !is_post_type_archive('gallery') ) || ( !taxonomy_exists('gallery_category') ) ) { echo $archive_layout_class; } } } 

Построенные в классе тела WP могут сделать это автоматически, если они будут реализованы. Однако, возможно, не до уровня детализации, который вы ищете. https://developer.wordpress.org/reference/functions/body_class/