查找页面的子项,然后将其回显为带项目符号的链接列表(菜单)

时间:2013-02-05 作者:user1822824

我正在尝试检查父页是否有子页。如果它有子项,我想以项目符号列表的形式回应这些子项,并提供指向每个子项的链接(基本上是一个菜单)。

现在,我有以下代码在循环页面中。它检查页面是否有子元素,并返回一个包含子元素的数组。我使用if语句检查数字是否大于0。

$children = get_pages(\'child_of=\'.$post->ID.\'&parent=\'.$post->ID);

if (count($children)) {
    // Echo children as a bulleted list of links
}
这部分似乎有用。

我的问题是,我如何在孩子们中间以项目符号链接列表的形式进行回应?如下面的示例所示。

假设“服务”是父页面,其子页面是“割草”、“水上花园”和“景观美化”。

count($children)将为“Services”页面返回3,因为它有3个子页面。现在它应该这样回应它们:

<ul>
<li><a href="#">Grass Cutting</a></li>
<li><a href="#">Water Gardens</a></li>
<li><a href="#">Landscaping</a></li>
</ul>
a href=应该是指向该页面的链接。

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

你只需要运行一个foreach 在您的$children 但是WordPress有一个内置函数wp list pages.

例如:

$children = wp_list_pages(\'title_li=&child_of=\'.$post->ID.\'&echo=1\');

if ($children)
echo \'<ul>\' . $children . \'</ul>\';
这里有完整的参考和示例:http://codex.wordpress.org/Function_Reference/wp_list_pages

结束

相关推荐

WooCommerce dynamic menus

我有一个基本的WordPress网站,设置了Suffusion主题和WooCommerce插件。这在大多数情况下都很有效,但是当我让人们点击/悬停在“Shop”菜单图标上时,我希望它能够动态地下拉我定义的产品类别。我如何做到这一点?我肯定有关于这个主题的文档,但我不确定要查找什么。我主要是一名系统管理员。