从wp_list_ages中退出页面

时间:2012-06-02 作者:Carlo

我正在开发一个由页面和子页面组成的导航菜单。我没有对它进行编码,所以我不完全确定它是如何工作的,但在阅读了一些代码后,似乎菜单是由navivation中的这一行生成的。php文件。

<?php wp_list_pages(\'title_li=&depth=\'.$bpt_navigation_depth.\'&sort_column=menu_order\'); ?>
现在,我不得不手动构建另一个菜单。我只是创建了一个列表,并插入了指向所需页面的链接,而没有使用任何wordpress功能。其中一些链接也在其他菜单中,因此我想从那里删除它们。我试过这样做:

<?php $args = array(
    \'depth\'        => 0,
    \'show_date\'    => \'\',
    \'date_format\'  => get_option(\'date_format\'),
    \'child_of\'     => 0,
    \'exclude\'      => \'17\',
    \'include\'      => \'\',
    \'title_li\'     => __(\'Pages\'),
    \'echo\'         => 1,
    \'authors\'      => \'\',
    \'sort_column\'  => \'menu_order, post_title\',
    \'link_before\'  => \'\',
    \'link_after\'   => \'\',
    \'walker\'       => \'\',
    \'post_type\'    => \'page\',
        \'post_status\'  => \'publish\' 
); ?>


        <?php wp_list_pages($args); ?>
但实际情况是,它创建了一个菜单,其中包含一个名为“Pages”的元素,其中包含一个子菜单和所有其他页面,无论如何,它不排除第17页。

2 个回复
SO网友:Adam

我不太清楚你到底想做什么"I had to manually build another menu. I just created a list and inserted links to the pages I needed, without using any WordPress function." 没有什么意义。

您需要通过包含exclude 中的参数wp_list_pages 作用

E、 g.(例如:“排除=3,7,31”)。

<?php wp_list_pages(\'title_li=&depth=\'.$bpt_navigation_depth.\'&sort_column=menu_order&exclude=17\'); ?>
撇开第二段代码不谈,您可能不需要调用这些参数中的每一个,除非您正在使用它们中的每一个。

因此,将这些争论削减到你需要完成的最低限度。

<?php $args = array(
    \'depth\'        => 0,
    \'exclude\'      => \'17\',
    \'sort_column\'  => \'menu_order, post_title\',
    \'post_type\'    => \'page\',
    \'post_status\'  => \'publish\' 
); ?>

<?php wp_list_pages($args); ?>
这就足够让你继续下去了,你可以根据需要添加或删除参数。

如果您试图构建除ID等于17的页面之外的所有页面的列表,那么上面的代码片段将适用于您。

让我们知道!

SO网友:Michael

尝试将代码编辑为:

<?php wp_list_pages(\'title_li=&depth=\'.$bpt_navigation_depth.\'&sort_column=menu_order&exclude=17\'); ?> 

结束

相关推荐

Post Navigation

我的帖子分类页面上有一个小部件区域,我想知道是否有方法可以动态添加到第一篇帖子以及该类别当前帖子的链接。我认为第一篇帖子可以硬编码,因为它永远不会改变,但现在的帖子会。我想知道什么样的php疯狂可以做到这一点?我知道我知道,你在问为什么不直接使用已经出现的帖子导航。。。客户就是他们。非常感谢您的任何帮助,这将非常有助于我避免在悬崖上行走。