是否将子页面列为普通页面?

时间:2011-03-28 作者:mathiregister

wp_list_pages(\'title_li=&depth=&exclude=\'); 
列出我的网站的所有页面。如果某个页面有子页面,则输出如下:

<li class="page_item page-item-2">
    <a href="http://domain.com/about" title="About">About</a>
    <ul class="children">
        <li class="page_item page-item-29">
            <a href="http://domain.com/about/subpage" title="Subpage">Subpage</a>
            <ul class="children">
                <li class="page_item page-item-39"><a href="http://domain.com/about/subpage/subsub" title="SubSub">SubSub</a></li>
            </ul>
        </li>
    </ul>
</li>
是否有一个简单的技巧可以打印不带分隔符的子页面,以便输出如下所示:

<li class="page_item page-item-2">
    <a href="http://domain.com/about" title="About">About</a>
</li>
<li class="page_item page-item-29">
    <a href="http://domain.com/about/subpage" title="Subpage">Subpage</a>
</li>
<li class="page_item page-item-39"><a href="http://domain.com/about/subpage/subsub" title="SubSub">SubSub</a>
</li>
我只需要为页面的特定部分使用该版本,因此它不应该是添加到wp\\u list\\u pages()的过滤器。

你知道如何做到这一点吗?

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

您可以使用get_pages() 函数,如下所示:

$mypages = get_pages();
echo \'<ul>\';
foreach($mypages as $page){     
    echo \'<li class="page_item page-item-\'.$page->ID.\'"><a href="\'.get_page_link($page->ID).\'">\'.$page->post_title.\'</a></li>\';
}
echo \'</ul>\';

SO网友:goldenapples

事实上,我相信depth=-1wp_list_pages() 应以平面、非嵌套列表的形式列出所有页面。但是,它不会保留子页面的顺序,因此在您的示例中,不能保证“子页面”会立即跟在“About”后面。。。所有内容都将按中选择的字段排序sort_column 参数

SO网友:Chip Bennett

默认情况下不是。wp\\u list\\u pages()没有“分层”参数。它将始终按层次结构输出页面。

您可以修改CSS,使子ULs和LIs与父ULs/LIs相同,但页面仍将按层次列出。

相关推荐

Read_Private_Pages功能不适用于新角色

我已经创建了一个新的用户角色-供应商-能够read_private_pages, 但当我以这样的用户身份登录并转到一个私人页面时,我看不到它。以下是我的插件代码:function fc_add_role($role, $display_name, $capabilities = array()) { if (!empty($role)) { return wp_roles()->add_role( $role, $display_name, $capabili

是否将子页面列为普通页面? - 小码农CODE - 行之有效找到问题解决它

是否将子页面列为普通页面?

时间:2011-03-28 作者:mathiregister

wp_list_pages(\'title_li=&depth=&exclude=\'); 
列出我的网站的所有页面。如果某个页面有子页面,则输出如下:

<li class="page_item page-item-2">
    <a href="http://domain.com/about" title="About">About</a>
    <ul class="children">
        <li class="page_item page-item-29">
            <a href="http://domain.com/about/subpage" title="Subpage">Subpage</a>
            <ul class="children">
                <li class="page_item page-item-39"><a href="http://domain.com/about/subpage/subsub" title="SubSub">SubSub</a></li>
            </ul>
        </li>
    </ul>
</li>
是否有一个简单的技巧可以打印不带分隔符的子页面,以便输出如下所示:

<li class="page_item page-item-2">
    <a href="http://domain.com/about" title="About">About</a>
</li>
<li class="page_item page-item-29">
    <a href="http://domain.com/about/subpage" title="Subpage">Subpage</a>
</li>
<li class="page_item page-item-39"><a href="http://domain.com/about/subpage/subsub" title="SubSub">SubSub</a>
</li>
我只需要为页面的特定部分使用该版本,因此它不应该是添加到wp\\u list\\u pages()的过滤器。

你知道如何做到这一点吗?

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

您可以使用get_pages() 函数,如下所示:

$mypages = get_pages();
echo \'<ul>\';
foreach($mypages as $page){     
    echo \'<li class="page_item page-item-\'.$page->ID.\'"><a href="\'.get_page_link($page->ID).\'">\'.$page->post_title.\'</a></li>\';
}
echo \'</ul>\';

SO网友:goldenapples

事实上,我相信depth=-1wp_list_pages() 应以平面、非嵌套列表的形式列出所有页面。但是,它不会保留子页面的顺序,因此在您的示例中,不能保证“子页面”会立即跟在“About”后面。。。所有内容都将按中选择的字段排序sort_column 参数

SO网友:Chip Bennett

默认情况下不是。wp\\u list\\u pages()没有“分层”参数。它将始终按层次结构输出页面。

您可以修改CSS,使子ULs和LIs与父ULs/LIs相同,但页面仍将按层次列出。

相关推荐

如何在WooCommerce总价金额->ProductPages下增加保证金

我对ProductPage上的woocommerce价格金额有两个问题。第一个问题:我想在总价格金额下增加更多保证金,并按下“添加到卡”按钮我怎样才能做到这一点?(示例见下图)第二我只想显示总价。现在我得到了可变产品的最低价格,显示在产品标题下面,以及总价格金额。我只想显示总价。已经谢谢你了!