Hallo!
ich habe ein seltsames "Widget-Problem" und kann den Fehler nicht erkennen bzw. beseitigen, obwohl ich schon fast alles ausprobiert habe.. Folgendermaßen gehe ich vor (schon das 100-te Mal, aber das Problem kommt das erste Mal vor).
Schritt 1: In functions.php 4 Widget Areas fürs Backend definieren
function my_widgets_init() {
// If Dynamic Sidebar Exists
if (function_exists('register_sidebar'))
{
// Define Sidebar Widget Area 1
register_sidebar(array(
'name' => __('1 Widget-Area', 'html5blank'),
'id' => 'widget-area-1',
'description' => __('Liste der Kategorien im Footer', 'html5blank'),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => ''
));
// Define Sidebar Widget Area 2
register_sidebar(array(
'name' => __('2 Widget-Area', 'html5blank'),
'id' => 'widget-area-2',
'description' => __('Newsletter Sidebar', 'html5blank'),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => ''
));
// Define Sidebar Widget Area 3
register_sidebar(array(
'name' => __('3 Widget-Area', 'html5blank'),
'id' => 'widget-area-3',
'description' => __('Newsletter green', 'html5blank'),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => ''
));
// Define Sidebar Widget Area 4
register_sidebar(array(
'name' => __('4 Widget-Area', 'html5blank'),
'id' => 'widget-area-4',
'description' => __('Newsletter Footer', 'html5blank'),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
'after_title' => ''
));
}
}
add_action( 'widgets_init', 'my_widgets_init' );
Alles anzeigen
Schritt 2: Alle 4 sidebars im Backend mit dem einfachsten hmtl-Code befüllen
In "HTML-Widgets" wird so etwas wie
jeweils einmal pro Widget eingefügt. Überhaupt nichts besonderes
Schritt 3: An unterschiedlichen Stellen erfolgt Ausgabe im Template
Die Inhalte werden ganz normal ausgegeben. Mal in single.php, mal in den Template Teilen über
Überhaupt nichts besonderes, wie gesagt. So erfolgt die Ausgabe:
4. Das Problem
besteht darin, dass bei dieser Ausgabe nicht das eine Widget, sondern alle vier ausgegeben werden! Ich habe überhaupt keine Idee, worauf dieses Verhalten zurück zu führen ist und wie ich das beseitigen soll.
--- Wenn ich alle Plugins deaktiviere, hilft das kein bisschen.
--- Wenn ich die selben Codes in ein anderes Theme einfüge, kommt die fehlerhafte Ausgabe jedoch nicht vor. D.h., dass es am (selbstentwickelten) Theme liegt.
--- Was ich durch ausgiebiges Testen herausgefunden habe - entferne ich <?php wp_footer(); ?> aus der footer.php-Datei, kommt alles in Ordnung und Ausgabe funktioniert ordentlich (Es wird Inhalt des jeweiligen an der Stelle definierten Widgets und nicht aller vier ausgegeben).
Worauf könnte das hindeuten?
Ich wäre für jeden Hinweis dankbar, was ich ausprobieren und an welcher Stelle evtl. etwas verändern könnte! Danke!