我正在为我的客户使用自定义小部件,因为这很容易,而且他们有几个菜单,需要创建特定于站点部分的菜单。然后,我希望允许他们使用小部件动态地添加到自定义菜单中(我为小部件创建所需的空间,然后他们将菜单拖放到小部件桶中)。
我尝试使用以下代码,但当左侧导航侧栏应该加载时,页面停止加载。
if (is_page( \'sport-fitness\' ) || \'269\' == $post->post_parent){
//menu for Sport & Fitness pages
<div id="seventh" class="widget-area" role="complementary">
<?php dynamic_sidebar( \'sidebar-7\' ); ?>
</div><!-- #second .widget-area -->
}elseif(is_page( \'eat-smart\' ) || \'118\' == $post->post_parent){
//menu for Eat Smart pages
<div id="eighth" class="widget-area" role="complementary">
<?php dynamic_sidebar( \'sidebar-8\' ); ?>
</div><!-- #second .widget-area -->
}else{
//default menu
}
自定义菜单需要显示在所有子页面上(但不是父页面,因为父页面使用不同的布局)。我在上面做了什么错事?
我要做的是:
if (is_page( \'sport-fitness\' ) || \'269\' == $post->post_parent){
//menu for Sport & Fitness pages
wp_nav_menu( array(\'menu\' => \'sport-fitness\' ));
}elseif(is_page( \'eat-smart\' ) || \'118\' == $post->post_parent){
//menu for Eat Smart pages
wp_nav_menu( array(\'menu\' => \'eat-smart\' ));
}else{
//default menu
}
但是,如果没有这些小部件提供的标题(它们需要),我就会陷入困境。例如:
SPORT & FITNESS非常感谢主页链接1和链接2的帮助。几天来,我一直在努力解决这个问题,这对完成他们的网站是一个阻碍。
TIA!
最合适的回答,由SO网友:Bainternet 整理而成
如果只想在子页面上显示菜单,则需要更改条件语句:
global $post;
//only on children of 269
if (\'269\' == $post->post_parent){
//menu for Sport & Fitness pages
?>
<div id="seventh" class="widget-area" role="complementary">
<?php dynamic_sidebar( \'sidebar-7\' ); ?>
</div><!-- #second .widget-area -->
<?php
//only on children of 118
}elseif( \'118\' == $post->post_parent){
//menu for Eat Smart pages
?>
<div id="eighth" class="widget-area" role="complementary">
<?php dynamic_sidebar( \'sidebar-8\' ); ?>
</div><!-- #second .widget-area -->
<?php
//everything else including parent pages
}else{
//default menu
}