Ich registriere 3 Seitenleisten auf widgets_init
register_sidebar(array(
'name' => esc_html__('Left Sidebar','creatus'),
'id' => 'left',
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<div class="widget_title_holder"><h3 class="widget-title">',
'after_title' => '</h3></div>',
));
// right sidebar
register_sidebar(array(
'name' => esc_html__('Right Sidebar','creatus'),
'id' => 'right',
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<div class="widget_title_holder"><h3 class="widget-title">',
'after_title' => '</h3></div>',
));
// lateral header sidebar
register_sidebar(array(
'name' => esc_html__('Lateral header sidebar','creatus'),
'id' => 'lateral-header-sidebar',
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<div class="widget_title_holder"><h3 class="widget-title">',
'after_title' => '</h3></div>',
));
Wenn ich das Theme zum ersten Mal auf einem sauberen WP installiere, werden 6 Widgets automatisch zu lateral-header-sidebar
hinzugefügt.
Melde ich sie falsch an oder warum werden sie zu dieser bestimmten Seitenleiste hinzugefügt und nicht zu einer anderen?
Jede Hilfe wird geschätzt.
Widgets werden in der Tabelle wp_options
gespeichert (vorausgesetzt, das Datenbankpräfix lautet wp_
). Sie können die Option abrufen und die Widgets manuell entfernen:
// Get all the associated widgets
$sidebar_widgets = get_option ( 'sidebars_widgets' );
// Check this specific sidebar
if ( isset( $sidebar_widgets [ 'lateral-header-sidebar' ] ) ) {
unset ( $sidebar_widgets [ 'lateral-header-sidebar' ] );
// Update the option
update_option ( 'sidebars_widgets', $sidebar_widgets );
}
Sie können dies in Ihrem Theme-Aktivierungs-Hook tun.