Я создал пользовательскую область виджетов в плагине, который я создаю.
function arphabet_widgets_init() {
register_sidebar( array(
'name' => 'Home right sidebar',
'id' => 'home_right_1',
'before_widget' => '<div>',
'after_widget' => '</div>',
'before_title' => '<h2 class="rounded">',
'after_title' => '</h2>',
) );
}
add_action( 'widgets_init', 'arphabet_widgets_init' );
dynamic_sidebar( 'home_right_1' );
И чтобы включить отображение виджетов, хранящихся в этом виджете, я вставил этот код в footer.php темы, которую я сейчас использую для тестирования.
<?php if ( is_active_sidebar( 'home_right_1' ) ) : ?>
<div id="primary-sidebar" class="primary-sidebar widget-
area" role="complementary">
<?php dynamic_sidebar( 'home_right_1' ); ?>
</div><!-- #primary-sidebar -->
<?php endif; ?>
Это работает, когда я добавляю виджеты в область виджетов, они отображаются в нижнем колонтитуле сайта. Но я хочу, чтобы плагин работал без изменения footer.php вручную. Как я могу проверить, какая тема активирована, а затем найти эту тему, файл footer.php и добавить этот код точно туда, где я хочу (чтобы он отображался ниже любого другого нижнего колонтитула, созданного с темой, когда она установлена. Также я хотел бы удалить нижний колонтитул, который был создан ранее.
Задача ещё не решена.
Других решений пока нет …