2013-11-18 8 views
0

Я хочу скрыть свои боковые панели, если в них нет содержимого, к сожалению, есть 26 000 функций, которые можно вызвать на боковой панели, что меня не интересует. Все, что я хочу, это скрыть боковые панели если они пусты, и покажите их, когда они содержат виджет.Скрыть боковую панель, если пустой - WordPress

Теперь я не уверен, следует ли использовать функцию get_sidebar или функцию dynamic_sidebar. Кроме того, мне интересно, если я должен использовать боковую панель-name.php назвать его или идентификатор в functions.php

ответ

0

O думаю, что это делает трюк:

<?php is_active_sidebar($index); ?> 

Однако, по моему очень мало опыт работы с WordPress, либо у вас есть боковая панель, либо нет. Зависит от шаблона, который вы выбрали для погоды, у него есть боковая панель или нет ... и я думаю, что он работает лучше, чем путь

+0

Ну я получил это ; ?>

+0

Hi, Это выглядит правильно. Разве это не работает для вас? – Archie22is

+0

Нет, я вытягиваю свои волосы на этом. На данный момент я пытаюсь заменить get_sidebar для dynamic_sidebar –

0

Я просто применил это на своем сайте WordPress, и он работает.

<?php if (is_active_sidebar('left-sidebar')) { ?> 
    <ul id="sidebar"> 
     <?php dynamic_sidebar('left-sidebar'); ?> 
    </ul> 
<?php } ?> 

В моем случае я имел это на моем functions.php

function videobgFour() { 
register_sidebar(array(
'name' => 'Background Four', 
'id' => 'videobg4', 
)); 
} 
add_action('widgets_init', 'videobgFour'); 

И это на мой файл header.php

<div class="box"> 
<?php dynamic_sidebar('videobg4'); ?> 
</div> 

Так что я должен был использовать PHP код в этом путь.

<?php if (is_active_sidebar('videobg4')) { ?> 
    <div class="box"> 
     <?php dynamic_sidebar('videobg4'); ?> 
    </div> 
<?php } ?> 

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

Смежные вопросы