首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >自定义Post类型在菜单导航中不突出显示

自定义Post类型在菜单导航中不突出显示
EN

WordPress Development用户
提问于 2012-03-30 21:25:38
回答 1查看 3.1K关注 0票数 1

在戏剧活动现场工作。该结构需要几个独立的事件区域,每个区域都有一个在特定区域中列出事件的顶级页面,在列表页面下面需要相应的单个事件页面。由于每个事件区域页面都需要不同的处理方式,所以我认为对于定制的post类型来说,这是一个很好的情况,为每个区域使用了单事件和归档-事件模板。

我安装了自定义Post类型UI以创建自定义post类型(包括匹配自定义分类法)和高级自定义字段以生成元字段。到目前一切尚好。Archive自定义post类型(区域事件的完整列表)从单个自定义post类型中提取元,两个自定义post页面都正确显示,除了一件事:主导航菜单不再高亮显示存档列表上的活动网页。注意:关于如何突出显示子菜单中的单个自定义帖子以匹配父类,有很多帖子;我不需要这样做,只需要当前事件区域在主菜单导航中正确地突出显示!

我意识到我已经用wp_nav_menu和register_nav_menus构建了我的主导航器--包括活动区域。因此,与Archive自定义posts对应的事件区域最初是作为页面构建的,主导航是使用WP菜单的拖放功能设置的。Wordpress正确地默认为存档--事件自定义post模板(并忽略现有的具有相同名称的页面),并且nav菜单在链接方面是有功能的,但是在nav中没有突出显示存档自定义post链接。主导航页正确工作。

当我检查事件区域上的输出时,有一个“current_page_parent”类附加到博客导航,但在其他地方没有“当前菜单项”,我认为它适合自定义帖子。我想,如果wp_nav_menu只是用于页面,这是有意义的,因为顶级的归档文章不会被识别,但我不知道如何修复它。我将尝试黑客,但希望避免特定的ID或jQuery,如果可能的话。其中一个想法是丢弃存档-事件模板,并为清单使用常规页面模板,同时保留真正的单事件自定义类型post。有什么理由假装这样不行吗?谢谢你的建议,希望我错过了显而易见的/简单的方法。

EN

回答 1

WordPress Development用户

回答已采纳

发布于 2012-04-03 20:50:38

我一直认为这是一个错误,但如果不是,这是相当令人不安的。您有两件事要修复:第一是不要高亮显示"Blog“顶级项,第二项是突出显示您的单个CPT所在的适当顶级项。

可能还有其他方法,但我将共享我的方法,不幸的是,它使用CSS针对菜单ID。

在nav容器中添加一个条件,该条件标识nav何时在单个CPT上显示:

<nav class="navsf<?php if (is_singular('news')) { echo ' fixhilite'; } ?>">

然后,您需要获得"Blog“菜单项和CPT父菜单项的id(在本例中为"News")。比方说“博客”,如下所示:

<li id="menu-item-29" ...>

对于“新闻”,它是:

<li id="menu-item-30" ...>

在CSS中,您可能会针对这些项目来更改文本或背景色,以相应地突出显示/取消突出显示:

.navsf.fixhilite li#menu-item-29

.navsf.fixhilite li#menu-item-30

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/47451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档