需要在不同的菜单项中使用两次wordpress页面

时间:2012-02-02 18:26:27

标签: wordpress navigation

我目前正在开发自定义WordPress主题并遇到问题。

我创建了一个自定义模板,将其子页面显示为类别概述。它适用于产品,结构如下:

Home (page id #3)
Products (page id #4)
    Category 1 (page id#6, child of page #4)
    Category 2 (page id#7, child of page #4) 
    Category 3 (page id#8, child of page #4)
    …

页面#4(产品页面)显示类别的概述。现在,首页还应该显示类别的概述,只是样式不同(也使用不同的标记,因此CSS不会完成这项工作)。

我已经修改了模板以响应在首页上调用。检测工作正常,如果我将产品页面定义为主页,则看起来像是预期的。

但是有一个问题:现在在导航(这是一个自定义菜单)中,“产品”项链接到主页,这样就不能用作类别概述。似乎wordpress将页面的角色覆盖为主页,即使我需要它作为它自己的实例,并使用相应的http://www.client.com/products网址。

因此,如果产品页面也被用作首页,我的导航结构就会混乱,我再也无法访问http://www.client.com/products/

使用首页使用相同模板的其他页面将无效,因为它不会有我正在查询的子页面。

我想要的是什么:

Home (page id #4) >> http://www.client.com/, overview style #1
Products (page id #4) >> http://www.client.com/products/, overview style #2
    Category 1 (page id#6, child of page #4)
    Category 2 (page id#7, child of page #4) 
    Category 3 (page id#8, child of page #4)
    …

我有什么:

Home (page id #4) >> http://www.client.com/, category overview style #1
Products (page id #4) >> http://www.client.com/, category overview style #1
    Category 1 (page id#6, child of page #4)
    Category 2 (page id#7, child of page #4) 
    Category 3 (page id#8, child of page #4)
    …

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

似乎这个问题无法解决,但我找到了解决方法。

  • 产品(页面编号#4)被定义为“帖子页面”并保存在导航中。
  • Home是一个页面(页面编号为#9)

两页,产品和主页,使用自定义模板“产品”,查询帖子页面:

$pages = get_pages( array('child_of' => get_option('page_for_posts')) );

它不漂亮,但它有效。