我为模板页脚创建了5个小部件部分。现在我想知道,如何才能使页脚部分仅在我的首页主题中可见,并使其他小部件在所有其他页面中可见?所以页脚5小部件出现在首页,页脚4出现在其他页面!
这是我写的,但没用!
<?php if (is_home()): if ( function_exists('dynamic_sidebar') && dynamic_sidebar(is_active_sidebar('footer5'))){?>
<div class="col-xs-12 col-sm-6 col-md-3">
<?php get_dynamic_sidebar('footer5'); ?>
</div><?php }?>
<?php elseif(is_active_sidebar('footer4')) : ?>
<div class="col-xs-12 col-sm-6 col-md-3 socialiconsfooter">
<?php dynamic_sidebar('footer4'); ?>
</div><?php endif; ?>
为了打印页脚5小部件,您需要将get_dynamic_sidebar('footer5')
更改为dynamic_sidebar('footer5')
<?php
if(is_home()):
if(function_exists('dynamic_sidebar') && is_active_sidebar('footer5')){
echo '<div class="col-xs-12 col-sm-6 col-md-3">';
dynamic_sidebar('footer5');
echo '</div>';
}
elseif(function_exists('dynamic_sidebar') && is_active_sidebar('footer4')){
echo '<div class="col-xs-12 col-sm-6 col-md-3">';
dynamic_sidebar('footer4');
echo '</div>';
}
endif;
?>
上面的代码应该可以工作。它将只在首页显示小部件。
编辑:为了在每个页面上显示小部件,下面的代码应该可以工作。
<?php
if(function_exists('dynamic_sidebar') && is_active_sidebar('footer5')){
echo '<div class="col-xs-12 col-sm-6 col-md-3">';
dynamic_sidebar('footer5');
echo '</div>';
}
elseif(function_exists('dynamic_sidebar') && is_active_sidebar('footer4')){
echo '<div class="col-xs-12 col-sm-6 col-md-3">';
dynamic_sidebar('footer4');
echo '</div>';
}
?>
在Wordpress中,为了在特定页面上显示特定的代码块,有很多条件函数可用。
用于检查当前页面是否为主页和检查当前页面是否是自定义页面。
检查条件后,您可以在任何特定页面或部分上加载特定的边栏或特定的小部件实例。
有关更多功能,请参阅wordpress codex。
这个问题现在通过这个代码解决了。非常感谢@danish。
if(is_front_page()&& function_exists('dynamic_sidebar') && is_active_sidebar('footer5')){
echo '<div class="col-xs-12 col-sm-6 col-md-3">';
dynamic_sidebar('footer5');
echo '</div>';
}else
if(!is_front_page() && function_exists('dynamic_sidebar') && is_active_sidebar('footer4')){
echo '<div class="col-xs-12 col-sm-6 col-md-3 socialiconsfooter">';
dynamic_sidebar('footer4');
echo '</div>';
}
?>