WordPress Widget PHP вывод в файл подкачки

Я создал виджет для своей темы WordPress и хочу вывести его содержимое.

Виджет отображается в бэкэнде под виджетами, поэтому он работает нормально.

Вот код в моем файле page.php

<?php if ( !dynamic_sidebar('Content Footer') ) : ?>
<div class="row">

<div class="col-lg-12 col-md-12 col-sm-12 col-12">
<div id="contentfooter"></div>
</div><!--/.col -->

</div><!--/.row -->
<?php endif; ?>

К сожалению все внутри тегов php не отображается. Просто необработанный контент, который я создал в Backend Widget.

Это работает, когда я помещаю условие в HTML-материал:

<div class="row">

<div class="col-lg-12 col-md-12 col-sm-12 col-12">

<div id="contentfooter">

<?php if ( !dynamic_sidebar('Content Footer') ) : ?>
<?php endif; ?>

</div>

</div><!--/.col -->

</div><!--/.row -->

Но тогда HTML-код всегда отображается, даже если я не использую виджет на определенной странице.

Вот Декларация Виджета в моих функциях: php:

if ( function_exists('register_sidebar') )
register_sidebar( array(
'name' => __( 'Content Footer'),
'id' => 'content_footer',
'description' => __( 'Content Footer Area', 'twentyeleven' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '<h3 class="content-footer-header">',
'after_title' => '</h3>',
));

Кто-то знает, что мне нужно изменить, чтобы выводить код, только если используется область виджетов?

Спасибо

0

Решение

Вы должны использовать is_active_sidebar() чтобы проверить, есть ли у вас виджеты на этой боковой панели, а затем распечатать его содержимое.

<?php if ( is_active_sidebar('content_footer') ) : ?>
<div class="row">

<div class="col-lg-12 col-md-12 col-sm-12 col-12">
<div id="contentfooter">
<?php dynamic_sidebar('content_footer'); ?>
</div>
</div><!--/.col -->

</div><!--/.row -->
<?php endif; ?>
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]