Автор: Quick Online Tips
Перевод: Всеволод Козлов
Из этой статьи Вы узнаете о том, как создать несколько динамических сайдбаров для размещения в них различных комбинаций виджетов.
Перед изучением этой статьи настоятельно рекомендую ознакомиться с первой частью, ссылка на которую в первом абзаце этой статьи!
Правим functions.php с целью получения нескольких динамических сайдбаров
Заменяем код, добавляющий 1 динамический сайдбар:
<?php
if ( function_exists('register_sidebar') )
register_sidebar();
?>
Или этот:
<?php
if ( function_exists('register_sidebar') )
register_sidebar(array(
'before_widget' => '',
'after_widget' => '',
'before_title' => '<h4>',
'after_title' => '</h4>',
));
?>
На код, добавляющий несколько динамических сайдбаров:
<?php
if ( function_exists('register_sidebar') )
register_sidebar(array('name'=>'sidebar1',
'before_widget' => '',
'after_widget' => '',
'before_title' => '<h4>',
'after_title' => '</h4>',
));
register_sidebar(array('name'=>'sidebar2',
'before_widget' => '',
'after_widget' => '',
'before_title' => '<h4>',
'after_title' => '</h4>',
));
?>
Для примера я сделал 6 динамических сайдбаров, на скриншоте ниже уместилось только 4 из них:

Теперь Вы можете экспериментировать с различными комбинациями виджетов.
Добавляем динамические сайдбары в нашу WordPress тему оформления
Открываем sidebar.php и в места, где мы хотим, чтобы отображались наши динамические сайдбары, вставляем соответствующие им коды.
Например, в место отображения динамического сайдбара 1 мы вставляем код:
<?php if ( !function_exists('dynamic_sidebar')
|| !dynamic_sidebar('sidebar1') ) : ?>
<?php endif; ?>
В место отображения динамического сайдбара 2 мы вставляем код:
<?php if ( !function_exists('dynamic_sidebar')
|| !dynamic_sidebar('sidebar2') ) : ?>
<?php endif; ?>
И так для каждого сайдбара!
После этого опять же сохраняем файл, обновляем его на сервере и наслаждаемся!
Оригинал статьи: How to Create Multiple Dynamic Sidebars for WordPress Widgets




