0

我在 wordpress 主题中创建了小部件位置:

    <div class="row">
        <?php if ( dynamic_sidebar('Top')) ?>
    </div>

如果在这个位置没有任何活动的小部件,那么我想隐藏整个代码。

有没有像 joomla 这样的 wordpress 代码

<?php if($this->countModules('Top')): ?>

4

1 回答 1

0

is_active_sidebar应该做的工作,至少 WP 源代码看起来好像函数会检查,如果侧边栏是空的:

/**
* Whether a sidebar is in use.
*
* @since 2.8
*
* @param mixed $index Sidebar name, id or number to check.
* @return bool true if the sidebar is in use, false otherwise.
*/
function is_active_sidebar( $index ) {
   $index = ( is_int($index) ) ? "sidebar-$index" : sanitize_title($index);
   $sidebars_widgets = wp_get_sidebars_widgets();
   if ( !empty($sidebars_widgets[$index]) )
           return true;
   return false;
}
于 2012-12-30T11:04:00.190 回答