我正在WordPress主题的页脚中创建一个动态窗口小部件区域。
我要做的是, 创建4个小部件,但只显示下一个小部件。
所以默认情况下,我会看到一个名为footer one的小部件
如果我们添加页脚一个页脚2选项将显示,但在页脚中,我们将看到一个页脚小部件如果我们在页脚2中添加第二个小部件我们将看到小部件3.如果我们在页脚3中添加小部件我们会看到页脚4。
如果只有页脚1存在宽度100%,我需要设置样式 如果2存在页脚1 50%。页脚2 50%
如果3存在页脚1 33%页脚2 33%。页脚3 33%
如果有4个页脚1 25%页脚2 25%页脚3 25%页脚4 25%
重要, 我成功完成了这项工作。但是,如果我仍然无法使其他小部件显示,只有父元素被填充。
这是我的代码:
<div class="footer-widgets">
<?php
/* The footer widget area is triggered if any of the areas
* have widgets. So let's check that first.
*
* If none of the sidebars have widgets, then let's bail early.
*/
if ( ! is_active_sidebar( 'first-footer-widget-area' )
&& ! is_active_sidebar( 'second-footer-widget-area' )
&& ! is_active_sidebar( 'third-footer-widget-area' )
&& ! is_active_sidebar( 'fourth-footer-widget-area' )
)
return;
if ( is_active_sidebar( 'first-footer-widget-area' )
&& is_active_sidebar( 'second-footer-widget-area' )
&& is_active_sidebar( 'third-footer-widget-area' )
&& is_active_sidebar( 'fourth-footer-widget-area' )
) : ?>
<aside class="fatfooter" role="complementary">
<div class="first quarter left widget-area">
<?php dynamic_sidebar( 'first-footer-widget-area' ); ?>
</div><!-- .first .widget-area -->
<div class="second quarter widget-area">
<?php dynamic_sidebar( 'second-footer-widget-area' ); ?>
</div><!-- .second .widget-area -->
<div class="third quarter widget-area">
<?php dynamic_sidebar( 'third-footer-widget-area' ); ?>
</div><!-- .third .widget-area -->
<div class="fourth quarter right widget-area">
<?php dynamic_sidebar( 'fourth-footer-widget-area' ); ?>
</div><!-- .fourth .widget-area -->
</aside><!-- #fatfooter -->
<?php
elseif ( is_active_sidebar( 'first-footer-widget-area' )
&& is_active_sidebar( 'second-footer-widget-area' )
&& is_active_sidebar( 'third-footer-widget-area' )
&& ! is_active_sidebar( 'fourth-footer-widget-area' )
) : ?>
<aside class="fatfooter" role="complementary">
<div class="first one-third left widget-area">
<?php dynamic_sidebar( 'first-footer-widget-area' ); ?>
</div><!-- .first .widget-area -->
<div class="second one-third widget-area">
<?php dynamic_sidebar( 'second-footer-widget-area' ); ?>
</div><!-- .second .widget-area -->
<div class="third one-third right widget-area">
<?php dynamic_sidebar( 'third-footer-widget-area' ); ?>
</div><!-- .third .widget-area -->
</aside><!-- #fatfooter -->
<?php
elseif ( is_active_sidebar( 'first-footer-widget-area' )
&& is_active_sidebar( 'second-footer-widget-area' )
&& ! is_active_sidebar( 'third-footer-widget-area' )
&& ! is_active_sidebar( 'fourth-footer-widget-area' )
) : ?>
<aside class="fatfooter" role="complementary">
<div class="first half left widget-area">
<?php dynamic_sidebar( 'first-footer-widget-area' ); ?>
</div><!-- .first .widget-area -->
<div class="second half right widget-area">
<?php dynamic_sidebar( 'second-footer-widget-area' ); ?>
</div><!-- .second .widget-area -->
</aside><!-- #fatfooter -->
<?php
elseif ( is_active_sidebar( 'first-footer-widget-area' )
&& ! is_active_sidebar( 'second-footer-widget-area' )
&& ! is_active_sidebar( 'third-footer-widget-area' )
&& ! is_active_sidebar( 'fourth-footer-widget-area' )
) :
?>
<aside class="fatfooter" role="complementary">
<div class="first full-width widget-area">
<?php dynamic_sidebar( 'first-footer-widget-area' ); ?>
</div><!-- .first .widget-area -->
</aside><!-- #fatfooter -->
<?php //end of all sidebar checks.
endif;?>
</div>
答案 0 :(得分:0)
您可以在Wordpress PHP中使用If else并在其基础上打印CSS ...只需引用一个返回活动小部件数量的钩子...
这可以帮助您构建一个函数来获取活动小部件:https://generatewp.com/snippet/2V0V0gy/
谢谢!