我正在尝试用DIV包装侧边栏, 如果侧边栏为空, 则不应显示DIV
但是我不能使用像
if(dynamic_sidebar(1))
{
echo '<
div>
';
dynamic_sidebar(1);
echo '<
/div>
';
}
因为如果不为空, 它将在DIV之前加载侧边栏, 有什么想法吗?
#1你始终可以使用输出缓冲。当打开输出缓冲时, 通常会回显到屏幕的所有内容都存储在缓冲区中。然后, 你可以在输出div标签之前测试缓冲区中是否有任何东西。
ob_start();
dynamic_sidebar(1);
$sidebar = ob_get_clean();
// get the contents of the buffer and turn it off.
if ($sidebar) {
echo "<
div>
" . $sidebar . "<
/div>
";
}
#2尝试:
if ( is_active_sidebar(1) )
{
echo '<
div>
';
dynamic_sidebar(1);
echo '<
/div>
';
}
#3你可以使用WordPress is_dynamic_sidebar(); 功能。
如果任何注册的侧边栏包含小部件, 则返回true;否则返回true。否则为假。
例子:
<
?php if(is_active_sidebar('my-sidebar') ) { ?>
<
div class="about-us">
<
?php dynamic_sidebar('my-sidebar');
?>
<
/div>
<
?php } ?>
【WordPress-如何知道边栏是否为空而不加载它()】这是我从functions.php运行的widget-area / sidebar注册脚本:
function foxinni_widgets_init() {register_sidebar( array(
'name' =>
'My Sidebar', 'id' =>
'my-sidebar', 'description'=>
'', 'before_widget' =>
'', 'after_widget'=>
'', 'before_title'=>
'', 'after_title'=>
'', ) );
}
add_action( 'widgets_init', 'foxinni_widgets_init' );
请注意, 我使用字符串my-sidebar通过ID标识了侧边栏。
推荐阅读
- WordPress(如何从特定类别查询帖子)
- WordPress,如何从帖子页面中的标签名称获取标签标签()
- WordPress-如何获取当前菜单中所有页面的ID()
- wordpress(如何在wordpress的wp_list_table类中启用”编辑和删除操作”按钮)
- wordpress按搜索页面上的帖子类型分组
- WordPress函数(更改现有的特色图像尺寸)
- WordPress的Foreach,传递类别ID变量显示帖子()
- WordPress通过元数据和搜索Heirachy筛选自定义帖子类型
- WordPress过滤器可以挂接到菜单li项并添加自定义属性