Я создаю дочернюю тему для twentyeleven. Я хочу удалить все боковые панели, указанные по умолчанию, и добавить одну из своих. В двенадцатилетних темах functions.php выглядит так:
<?php
// etc etc etc
function twentyeleven_widgets_init() {
register_widget( 'Twenty_Eleven_Ephemera_Widget' );
register_sidebar( array(
'name' => __( 'Main Sidebar', 'twentyeleven' ),
'id' => 'sidebar-1',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
) );
// etc. 4 others registered too...
}
add_action( 'widgets_init', 'twentyeleven_widgets_init' );
// etc etc etc
?>
Теперь я понимаю, что если я просто закомментирую действие добавления, это удалит их все. Я не хочу думать об этом, потому что, когда родительская тема обновляется, они снова появляются.
Я попытался сделать это в functions.php дочерней темы безуспешно:
<?php
// etc etc etc
function unregister_old_sidebars() {
unregister_sidebar('sidebar-1');
//and i've tried unregister_sidebar('Main Sidebar');
}
add_action( 'widgets_init', 'unregister_old_sidebars' );
// etc etc etc
?>
Кодекс говорит использовать unregister_sidebar ($ id), где $ id - это «ID боковой панели, когда она была добавлена». Итак ... я думаю, что это действие 'widgets_init' не так? Функции дочерней темы не запускаются ПОСЛЕ родительских функций?
Помощь! : D
Бен