Ich habe den folgenden Code
// in functions.php
register_sidebar(array(
'before_widget' => '<section>',
'after_widget' => '</section>',
'before_title' => '<h3>',
'after_title' => '</h3>',
));
// in sidebar.php
if (!function_exists('dynamic_sidebar') || !dynamic_sidebar()) : ?>
// static sidebar here ..
Ich finde, dass die statische Seitenleiste auch dann angezeigt wird, wenn ich Widgets zum Dashboard hinzufüge. Ich bin nicht sicher, ob WP3.2 es verursacht hat, da ich vor dem Update nie versucht habe, eine dynamische Seitenleiste zu verwenden
Sie sollten die Parameter name
und id
zu Ihrem Argumentarray register_sidebar()
hinzufügen:
'name'=>'Sidebar Name',
'id'=>'sidebar-slug',
Wie solche:
register_sidebar(array(
'name'=>'Sidebar Name',
'id'=>'sidebar-slug',
'before_widget' => '<section>',
'after_widget' => '</section>',
'before_title' => '<h3>',
'after_title' => '</h3>',
));
Rufen Sie dann die id
der Seitenleiste in Ihrem dynamic_sidebar()
-Aufruf auf:
if ( ! dynamic_sidebar( 'sidebar-slug' ) ) {
}
Übrigens: Sie müssen keine function_exists( 'dynamic_sidebar' ) )
-Bedingung einfügen. Diese Funktionalität gibt es in WordPress seit Version 2.8.