Я ищу способ динамически выделять пункт меню в любое время, когда пользователь просматривает страницу, присвоенную данной таксономии или категории. Например, панель навигации вверху с элементами «Продукты» и «Стратегия». Любая страница или сообщение, созданное и имеющее категорию или таксономию «продукт», приведет к тому, что пункт меню «Продукты» будет выделен, когда вы находитесь на странице этого продукта. Я думаю, что если бы я мог найти способ просто применить класс к этому элементу на основе вышеуказанных критериев, это бы сработало. Любые идеи? Я в тупике на этом.
Подсветка динамического меню Wordpress, если страница относится к определенной категории
Ответы (1)
Я бы порекомендовал фронтенд-подход. Вот что я думаю:
1) У вас есть 2 или более категорий: продукты и стратегия ...
2) Каждое сообщение в разделе "Товары" будет иметь строку основного класса, содержащую класс, который, вероятно, называется products-taxonomy или что-то в этом роде.
3) С помощью jQuery вы можете проверить наличие таксономии продуктов или стратегии-таксономии и выделить конкретный пункт меню. Это легко сделать с помощью селекторов jQuery при условии, что вы добавляете определенный класс в категорию продуктов при создании меню.
Это будет примерно так:
добавьте класс для пункта меню продуктов: 'productsMenu'
добавьте класс для пункта меню стратегии: 'strategyMenu'
убедитесь, что вы повторили body_class
var $body = $(body); // better select just once the body
if($body.hasClass('products-taxonomy')) {
// highlighetMenuItem should be your highlighting class
$(".productsMenu").addClass("highlighetMenuItem");
} else if($body.hasClass('strategy-taxonomy')) {
$(".strategyMenu").addClass("highlighetMenuItem");
}
И да ... вам нужен jQuery в интерфейсе, если вы хотите, чтобы это работало. Или вы можете использовать чистый javaScript почти в таком же количестве строк кода. :)