Я хотел бы, чтобы этот список меню создавался динамически в нижнем колонтитуле:
<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»). Примечание: это также может быть закодировано с использованием неупорядоченных списков … это не имеет значения для меня, так как это будет вертикальный список.
Это точно такой же список страниц, которые находятся в главной панели меню навигации, найденной в header.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 >
И что у меня есть в function.php для основного меню навигации:
add_theme_support( 'menus' );
function register_theme_menus() {
register_nav_menus(
array (
'header-menu' => __( 'Header Menu' )
)
);
}
add_action( 'init', 'register_theme_menus' );
.
Я просто не могу придумать способ дублировать / изменить вышеприведенное, чтобы сделать то, что мне нужно, в нижнем колонтитуле. (Обратите внимание, что это будет закодировано непосредственно в footer.php, а не создано внутри виджета.)
Кто-нибудь может предложить какое-либо руководство?
РЕДАКТИРОВАТЬ:
Я попытался добавить этот код в нижний колонтитул для решения, но я должен делать что-то не так, потому что я получаю сообщение об ошибке: Меню «header-menu» не определено
<?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. Не оставляйте в структуре меню «опубликованные», которые вы на самом деле не используете, потому что этот код подхватит их … даже если вы не помечены как добавленные в главное меню навигации. (Я просто пометил те, которые хотел сохранить, как черновики … на тот случай, если они понадобятся мне позже, например: страница блога)
Так легко написать код, но найти решение было определенно сложно !!!
Других решений пока нет …