从页面创建中选择边栏

时间:2011-09-14 作者:Lee Peterson

我正在建立一个WP网站,需要有能力在每个部分的基础上创建独特的小部件。我构建了站点的页面结构,然后构建了站点的侧栏结构。事情是这样的。。。

Services (section - uses Services sidebar)
    Service Name (page - uses Services sidebar)
    Service Name (page - uses Services sidebar)
Industries (section - uses Industries sidebar)
    Industry (page - uses Industries sidebar)
    Industry (page - uses Industries sidebar)
在服务名称创建页面上,我希望在一侧的元框中有一个选择下拉列表,允许选择已注册的侧栏。例如,在创建新的服务名称页面时,我想选择服务侧栏作为该页面所需的侧栏。然后,我可以在侧边栏中引用该对象。php文件。

我之所以需要这个设置,是因为我没有什么可以关联的,比如“如果这个页面位于服务父页面之下,我希望每次都显示这个侧边栏。”我可以使用条件并将其与页面名称、页面ID、slug等联系起来。。。但这并不灵活,也不符合CMS的要求。如果客户将服务更改为我们的服务怎么办?如果他们重新创建服务页面并获得一个新ID怎么办?我不能限制我的客户遵守这些惯例。

我不能依赖Widget逻辑插件或任何类似的东西,因为客户端不知道如何使用它;它显然不是为技术上有挑战的人群建造的。

这方面的任何帮助或建议都会非常有用。如果我的逻辑不正确,请告诉我我是一个大傻瓜,并解释如何做到最好。

非常感谢。

1 个回复
SO网友:Michelle

听起来您可以使用页面模板来实现这一点。您可以在主题中创建一个名为“页面服务”的文件。php“(例如)。当用户创建新页面时,他们会选择“服务”模板,而不是“服务”侧栏,但对于您的目的来说,这基本上是一样的。以下是如何设置模板:http://codex.wordpress.org/Pages#Page_Templates

您可以使用以下条件来确定显示哪个模板(在sidebar.php中用于在侧栏之间交换):http://codex.wordpress.org/Conditional_Tags#Is_a_Page_Template

希望这有帮助,祝你好运。

结束