Ich benutze Folgendes, um einen Widget-Bereich zu registrieren:
if ( function_exists('register_sidebar') )
register_sidebar( array(
'name' => __( 'Footer Widgets', 'hex'),
'id' => 'footer-widgets',
'class' => 'footer-widgets',
'description' => __( 'Widgets will appear in the blog, between the end of content and footer', 'hex' ),
'before_widget' => '<li class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<h2 class="widgettitle">',
'after_title' => '</h2>'
) );
Und sowohl id
als auch class
werden ignoriert. Ich erhalte nur die Widgets selbst. Das oberste Element im Widget-Bereich ist der <li>
.
Ich weiß, dass ich es einfach in den index.php
einwickeln kann, in dem die Widgets angezeigt werden, mit einem div, aber soll das nicht so sein?
Der id-Parameter in register_sidebar steht nicht in direktem Zusammenhang mit der HTML-Ausgabe. Es wird verwendet, um jede Seitenleiste zu identifizieren, wenn das $ widget_object erstellt wird.
Die Klasse sollte zum before_widget-Markup hinzugefügt werden.
http://core.trac.wordpress.org/browser/tags/3.4.1/wp-includes/widgets.php#L1128 Hier wird die Klasse analysiert.