我想在页脚中动态创建此菜单列表:
<a href="<?php bloginfo( 'url' ); ?>/">Home</a><br>
<a href="<?php bloginfo( 'url' ); ?>/about-us/">About Us</a><br>
<a href="<?php bloginfo( 'url' ); ?>/legal-services/">Our Legal Services:</a><br>
<a class="indent" href="<?php bloginfo( 'url' ); ?>/legal-services/commercial-law/">Commercial Law</a><br>
<a class="indent" href="<?php bloginfo( 'url' ); ?>/legal-services/concrete-law/">Concrete Law</a><br>
<a class="indent" href="<?php bloginfo( 'url' ); ?>/legal-services/general-business-law/">Business Law</a><br>
<a href="<?php bloginfo( 'url' ); ?>/contact-us/">Contact Us</a>
包括能够识别菜单项是子菜单项并使其缩进(例如:class="indent"(。 注意:这也可以使用无序列表进行编码。这对我来说无关紧要,因为它将是一个垂直列表。
它与标题中主导航菜单栏中的页面列表完全相同.php
这是我在标题中为主导航编写的代码:
<nav class="navbar navbar-inverse navbar-static-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<!-- button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar" --> <!-- not on mirage? -->
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse">
<?php
$args = array(
'menu' => 'header-menu',
'menu_class' => 'nav navbar-nav navbar-right',
'container' => 'false'
);
wp_nav_menu( $args );
?>
</div><!--/.navbar-collapse -->
</div>
</nav >
以及我在主导航菜单中的功能.php
: add_theme_support( 'menus' );
function register_theme_menus() {
register_nav_menus(
array (
'header-menu' => __( 'Header Menu' )
)
);
}
add_action( 'init', 'register_theme_menus' );
.
我只是想不出一种方法来复制/修改上述内容以在页脚中完成我需要的操作。 (请注意,这将直接编码到页脚.php中,而不是在小部件中创建。
任何人都可以提供任何指导吗?
编辑:
我尝试将此代码添加到页脚以获取解决方案,但我一定做错了什么,因为我收到以下错误消息: 菜单"标题菜单"未定义
<?php
// Get the nav menu based on $menu_name (same as 'theme_location' or 'menu' arg to wp_nav_menu)
// This code based on wp_nav_menu's code to get Menu ID from menu slug
$menu_name = 'header-menu';
if ( ( $locations = get_nav_menu_locations() ) && isset( $locations[ $menu_name ] ) ) {
$menu = wp_get_nav_menu_object( $locations[ $menu_name ] );
$menu_items = wp_get_nav_menu_items($menu->term_id);
$menu_list = '<ul id="menu-' . $menu_name . '">';
foreach ( (array) $menu_items as $key => $menu_item ) {
$title = $menu_item->title;
$url = $menu_item->url;
$menu_list .= '<li><a href="' . $url . '">' . $title . '</a></li>';
}
$menu_list .= '</ul>';
} else {
$menu_list = '<ul><li>Menu "' . $menu_name . '" not defined.</li></ul>';
}
// $menu_list now ready to output
echo $menu_list;
?>
任何帮助将不胜感激!
哇.
.我其实是自己想通的。. 我想多了! 最终,解决方案非常简单。(注意:这仅适用于列表页面 - 在页脚中创建迷你站点地图(
您只需要添加以下代码行:
<div class="footermap">
<ul style="list-style-type: none;"><?php wp_list_pages("title_li="); ?></ul>
</div>
并将其添加到您的 css 中以远离项目符号点,并正确排列:
.footermap > ul {
padding-left: 0px;
}
.footermap > ul ul.children {
list-style-type: none;
padding-left: 15px;
}
并且还要确保在WP管理区域中清理页面列表..不要在菜单结构中留下任何您实际上没有使用的"已发布",因为此代码将拾取它...即使您没有将其标记为已添加到主导航菜单。 (我只是将我想保留的那些标记为草稿......以防万一我以后需要它们,例如:博客页面(
编码如此简单,但绝对很难找到解决方案!!