使用Jetpack可见性时,IS_DYNAMIC_SIDEAR始终返回TRUE

时间:2014-07-25 作者:Geoffrey Burdett

如果侧栏中有任何小部件,即使jetpack可见性设置为不在该页面上显示,那么\\u dynamic\\u侧栏是否返回true。

以下是我的主题函数文件中的代码:

add_action( \'init\', \'iartz_add_sidebar_class\' );

function iartz_add_sidebar_class() {
    add_filter(\'body_class\',\'check_has_sidebar\');
    function check_has_sidebar($classes) {
        if ( is_dynamic_sidebar() ) {
            $classes[] = \'has-sidebar\';
        } else {
            $classes[] = \'no-sidebar\';
        }
        return $classes;
    }
}
(我试着使用几个不同的钩子,认为侧边栏必须注销或其他什么,但这似乎并不重要)

是否有不同的方法来检查侧栏,以考虑jetpack的可见性,或者有其他插件具有相同的功能,但也可以使用Is\\u dynamic\\u侧栏?

1 个回复
最合适的回答,由SO网友:bravokeyl 整理而成

您可以使用is_active_sidebar(\'your_sidebar_name or id\') 而不是is_dynamic_sidebar() 检查所需的侧栏是否有小部件。在这种情况下,它对你有效。

结束

相关推荐

Global functions on WPMU

我在一个多站点环境中工作,所有站点都是相关的。最近的许多发展都要求我将某些功能复制并粘贴到许多不同的主题文件夹中,如果我需要到处更新它们,就会出现问题。拥有全局“functions.php”文件的最佳方式是什么?我的想法是要么在themes文件夹中包含一个文件并包含它,要么创建一个插件并启用该插件。