WP Как привязаться к посту который НЕ принадлежит категории?
Есть необходимость добавлять всем постам у которых нету категории со слагом national-football-team определенный css.
/ Для Обзора Команды
if (is_single() && !is_category("national-football-team")):
wp_enqueue_style('onlySingleFootballTeam', get_template_directory_uri() . '/css/only_team-post.min.css', array('main-css'), null, false);
endif;
А тем что имеют, другой....
// Для Обзора Команды НАЦИОНАЛЬНОЙ сборной
if ( is_single() && is_category("national-football-team") ):
wp_enqueue_style('onlyNationalFootballTeam', get_template_directory_uri() . '/css/only_national-team.min.css', array('main-css'), null, false);
endif;
Но это не работает. Не могу понять что не так с запросами.
Ответы (1 шт):
is_category() проверяет показывается ли страница категорий или нет. При помощи проверки !is_category("national-football-team") Вы по-сути проверяете не находитесь ли Вы на странице категории со слагом "national-football-team". То есть работать оно будет только на странице категории.
Для своих целей Вы можете использовать has_category()
if (is_single() && !has_category("national-football-team", get_the_ID())):
wp_enqueue_style('onlySingleFootballTeam', get_template_directory_uri() . '/css/only_team-post.min.css', array('main-css'), null, false);
endif;
if (is_single() && has_category("national-football-team", get_the_ID()) ):
wp_enqueue_style('onlyNationalFootballTeam', get_template_directory_uri() . '/css/only_national-team.min.css', array('main-css'), null, false);
endif;
Если нужно добавить стили для конкретного template используйте is_page_template(), например is_page_template('templates/template-file-name.php').
С версии WordPress 4.7 работатет с любыми пост тайпами, не только страницами.