dynamic_sidebar() Ausgabe funktioniert falsch

  • 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

    Schritt 2: Alle 4 sidebars im Backend mit dem einfachsten hmtl-Code befüllen
    In "HTML-Widgets" wird so etwas wie

    PHP
    <h3>Bla-bla <span>super</span> bla-bla!</h3>


    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

    PHP
    <?php get_template_part( 'newsletter-sidebar' ); ?>

    Überhaupt nichts besonderes, wie gesagt. So erfolgt die Ausgabe:

    PHP
    <?php
    if ( ! dynamic_sidebar( 'widget-area-2' ) ) : ?>
    <?php endif; ?>

    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!

    Aus den Forum.WPDE.org Nutzungsbedingungen: "...Werbung, insbesondere kommerzielle, ist sowohl in Signaturen als auch Beiträgen ohne vorherige Genehmigung des Betreibers verboten. Bei Zuwiderhandlung behalten wir uns vor die Beiträge zu löschen und den entsprechenden User zu sperren...".

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hallo und vielen Dank für die Antwort!
    Den Link kann ich hier leider nicht posten, da ich lokal entwickele..

    Den Screenshot füge ich gerne an! Sogar drei Screenshots, denn ich habe doch etwas bemerkt, was ich nicht begreifen kann.. und zwar:

    "widgets.jpg" zeigt das Backend. Es gibt, wie gesagt, 4 definierte Widget-Bereiche. Wichtig: ich habe nun Widget-Titles hinzugefügt (T1 bis T4)
    "widgets2.png" zeigt den Bereich, wo eigentlich nur "Widget-2" (von "2 Widget-Area" im Backend) ausgegeben werden soll. Seltsam: es wird der richtige Titel ausgegeben! Dem folgen dann leider Inhalte aller vier Widgets (jedoch ohne Titel).
    "widgets4.png" zeigt den Bereich, wo nur "Widget-4" (von "4 Widget-Area" im Backend) ausgegeben werden soll. Das Verhalten ist genau so wie im vorigen Beispiel: ausgegeben werden der richtige Titel und Inhalte aller vier Widgets!

    Das kann ich mir wirklich nicht erklären..

  • Ohne Link zur Seite mit Einblick in den tatsächlich ausgegebenen HTML-Code lässt sich das nur schwer genauer eingrenzen.

    Weiterhin wäre im Verlauf wohl auch Einblick in den PHP-Code des Themes nötig, sehe gerade erst, dass es selbstentwicklelt ist, also kann man es nirgends herunterladen, wende Dich daher am besten an die Person, die das Theme ursprünglich erstellt hat.

  • Ich habe das Theme ursprünglich erstellt )) Das ist das Komische daran.. Als Basis hatte ich ein komplett leeres Theme von http://html5blank.com/ genommen - das ist aber schon ewig her..

    Ich habe die oben angeführten Codes zum Sidebars Anlegen mit register_sidebar() und Ausgeben bereits gefühlt 50 Mal verwendet und nie Probleme gehabt. Das ist das erste Mal, wo das zum unerklärlichen Verhalten geführt hat.

    Aber ich verstehe, dass ich das Unmögliche verlange, ohne die HTML-Ausgabe zu zeigen blind nach der Lösung zu suchen ) Vielen Dank für Deine Hilfe, @b3317133 , ich suche mal weiter. Vielleicht meldet sich jemand, der das Problem bereits gehabt hat.

    Aus den Forum.WPDE.org Nutzungsbedingungen: "...Werbung, insbesondere kommerzielle, ist sowohl in Signaturen als auch Beiträgen ohne vorherige Genehmigung des Betreibers verboten. Bei Zuwiderhandlung behalten wir uns vor die Beiträge zu löschen und den entsprechenden User zu sperren...".

  • Durchsuche den gesamten Code des Themes nach "sidebar" und schau Dir an, was wo ausgegeben wird. Im verlinkten leeren Theme werden z.B. in [FONT=Courier New]sidebar.php[/FONT] zwei Widgetbereiche ausgegeben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!