创建不显示在前端导航栏中的页面

时间:2014-09-12 作者:efdee

我的插件需要在站点前端添加几个屏幕,例如历史概述(http://www.site.com/history?event=X).

首先,我通过编程方式在正文中添加一个带有短代码的页面来实现这一点,并将逻辑放在短代码后面。这很好,因为用户现在可以编辑页面标题、URL和页面模板,从而影响页面在其前端的外观。

然而,一个不必要的副作用是,至少在默认的Wordpress主题中(我现在还没有签入其他主题),我的页面会显示在前端的导航栏中。我不想这样,这既是出于美观的原因,也是因为页面需要一个参数来运行(?event=X),而不是独立的。

所以我的第二个想法是创建一个自定义的post类型。这样我可以告诉它不要显示在导航菜单中(show\\u in\\u nav\\u menus=>false),但现在我失去了用户对其应用页面模板的能力。

所以我的实际问题是“我可以通过编程创建一个不会显示在导航栏中的页面吗?”,但如果我在做一些愚蠢的事情,并且有更好的方法来处理这件事,我会很高兴听到这件事。

1 个回复
最合适的回答,由SO网友:cybmeta 整理而成

在导航栏中自动显示页面不是Wordpress的标准功能。它是主题或插件的一个特定特性。如果您正在使用的主题具有此功能,而您不需要它,则需要创建子主题并修改此行为。

不管怎样,您所描述的使用自定义帖子类型确实更好。想想看。您正在使用页面(帖子类型)嵌入其他类型的内容。Wordpress允许您定义自定义类型的内容,称为自定义帖子类型。使用它,它会好得多:自定义模板、管理UI、searh、查询API、元数据API、对象更改、permlinks、轻松导入和导出,等等。

结束

相关推荐

创建与“Pages”页面类似的仪表板菜单页面

我希望为“staff”类别创建一组静态页面,然后在仪表板中为它们提供一个单独的菜单选项,类似于已经存在的“pages”选项。我想知道的是,是否有一个内置的wordpress函数可以加速这个开发。如果你对从哪里开始搜索有什么建议,那就太好了,因为我当前的搜索被无数关于如何添加新页面或如何复制页面的教程所阻碍,而不是复制“页面”菜单。对这篇文章内容广泛、含糊不清表示歉意。我是wordpress的新手,我仍然在吸收这个庞大的知识库。