Wordpress:在父页面底部打开页面

时间:2014-07-31 22:09:39

标签: php wordpress templates menu nav

我现在已经挣扎了好几天了,不能再思考了。

我为事件菜单的特定页面创建了一个模板,在该页面中我有一个子菜单。此子菜单包含事件菜单。出于示例的目的:第1项,第2项和第3项

这些菜单项是他们自己的页面。

子菜单应该打开此模板中的页面。下面的页面布局示例:

Header
Main Nav
Banner Image
Content for Events
Event Menus (Item 1 | Item 2 | Item 3)
Menu Content
Footer

菜单内容通过单击菜单项切换出来,但事件内容保持不变。

我目前通过在链接末尾添加$ _GET变量来实现它,但我已对该菜单进行了硬编码。我不想要这个,因为客户端无法进行自己的菜单更改并编辑菜单。 (到目前为止,变化的数量是荒谬的。)

我已将事件菜单和菜单内容放入另一个嵌套循环中,理论上它会在循环内作出反应,尽管初始测试失败了。

我真的很想保持Wordpress的动态特性。菜单系统,但不能在没有硬编码的情况下使其工作。

在这一点上,我对在哪里研究方向感到满意。

感谢。

2 个答案:

答案 0 :(得分:1)

如果菜单内容的HTML不太笨重,您可以将每个菜单放入Wordpress页面,客户端可以在其中编辑它。只需为每个菜单创建一个Wordpress页面,放入菜单内容,保存,并记下页面的ID号。

然后,在您的模板中,您可以通过使用以下内容获取页面来提取菜单内容:

<?php
    // Menu One is content in Page ID # 14
    $menu_one = get_post(14); 
    echo apply_filters('the_content', $menu_one->post_content);
?>

供您参考,在Wordpress Codex上使用get_post:http://codex.wordpress.org/Function_Reference/get_post

在您的实际页面上,您可以执行的操作而不是使用GET来获取每个菜单,只需继续并在页面加载时加载所有3个菜单。使用CSS,您可以隐藏最初不想要的两个,只显示默认值。然后在菜单项链接上使用一些JavaScript事件,您可以显示单击的菜单并隐藏其他两个。

答案 1 :(得分:0)

自从提出这个问题以来,我在oop和WP编程中加了几个缺口。我认为更好的方法是使用自定义帖子类型,并使用基于链接的参数更改wp_query对象,该链接可能只是由帖子ID控制。但它仍然允许将菜单添加到控制帖子的“存档”页面。最终允许客户端控制菜单,但仍然具有动态能力。