1

因此,如果没有要显示的小部件,我会尝试不显示侧栏

当我使用该is_active_sidebar()函数时,它总是返回 false 并且 if 语句不起作用,当我尝试使用该is_dynamic_sidebar()函数时,它总是返回 true。

我安装了小部件逻辑插件,因此一些小部件显示在页面上,而有些页面没有小部件。

这是我的代码:

        <div class="row main-row">
        <?php if (is_dynamic_sidebar('left_bar')) { ?>
            <div class="col-md-3 left-sidebar">
                <?php
                dynamic_sidebar('left_bar');
                ?>
            </div>

            <div class="col-md-9 main-content">
                <?php the_content('Read More'); ?>
            </div>
        <?php } else { ?>
            <div class="col-md-12 main-content">
                <?php the_content('Read More'); ?>
            </div>
        <?php } ?>
    </div>

关于我应该做什么的任何想法?

4

2 回答 2

1

您使用了错误的功能来检查活动侧边栏试试这个

if ( is_active_sidebar( 'left_bar' ) )
dynamic_sidebar( 'left_bar' );
于 2013-10-15T06:09:41.590 回答
0

试试这个,它是使用侧边栏的不同方式

[1] 将所有“left_bar”(侧边栏)代码放入名为“sidebar-left_bar”的新文件中

[2] 与 header.php、function.php 和所有文件一起保存

[3] 现在只需<?php get_sidebar( 'left_bar' ); ?>在你想使用的地方使用

谢谢

于 2013-10-15T06:34:45.527 回答