0

基本上我在wordpress中有一个三级菜单,我在前端有以下代码来调用三级菜单:

$children = get_pages('child_of='.$include_page_ids[$i]);

    if (count($children) > 1) {

        $sub = "<ul>";

        foreach ($children as $child){

        $sub .= "<li><a href='#$child->post_title'>";

        $sub .= $child->post_title;

        $sub .= "</a></li>";

        }

        $sub .="</ul>";

        echo $sub;

    }

这会为某个页面的子项调用一个列表,并制作锚点(我也需要)。问题是现在它们按字母顺序显示,但我需要能够自己设置正确的顺序(即与后端菜单中的顺序相同)。请帮帮我,我怎样才能做到这一点?例如,这是页面http://www.eboxlab.net/transbeam/support/support/,您可以在横幅旁边的方框中看到第三级菜单(条款和条件的可接受使用政策)。它对应的块的顺序是正确的,但菜单是按字母顺序排列的。帮助真的很感激。PS:如果需要我可以提供模板代码

4

2 回答 2

0

wp_nav_menu来救援!假设您使用的是 WP 3 或更新版本,它将允许您将元素包装在您想要的任何标记中,并且将与您在管理仪表板中配置菜单的方式相对应。

于 2012-11-13T20:30:44.077 回答
0

其实很简单。以下是您的$children呼叫应如下所示: $children = get_pages('child_of=' . $include_page_ids[$i] . '&orderby=menu_order&sort_order =ASC');

这就是您需要添加的全部内容 - 这告诉查询按其“menu_order”列(或Page attributes下的“Order”字段)以升序方式对页面进行排序。您可以在函数参考/获取页面中查看有关 get_pages 函数的更多详细信息

于 2012-11-13T20:56:10.697 回答