Conditional tag scheint nicht zu greifen

  • [COLOR=YellowGreen]Holla und prost aufs neue Jahr[/COLOR]

    Versuche gerade den Conditional Tag "is_page()" im Footer einzubauen. Genauer sieht das so aus:

    PHP
    <ul>
    <li <?php if ( is_page('home') ) { echo 'class="selected"'; } ?>><a href="<?php bloginfo('url'); ?>/index.php">Startseite</a> &nbsp;|&nbsp; </li>
    </ul>

    Die HTML Ausgabe wird dann aber zu:

    HTML
    <li >

    Verstehe das nicht da ich genau denselben Code in der header.php erfolgreich eingebaut habe. Irgendwelche Gedankensprünge vorhanden :mrgreen: ?

    • 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

  • Versuch mal, was passiert, wenn du den li-Tag sofort wieder schließt. Damit wäre auch die HTML-Syntax besser.

    Syntronica Le coeur est le moteur du corps, mais le cerveau est le moteur de la vie.

  • Syntronica: Sorry, aber Deinen Kommentar kann ich überhaupt nicht nachvollziehen. Das gepostete Beispiel sieht doch korrekt aus!?

    Merz Manuel:
    In der HTML-Ausgabe steht aber schon auch noch der Link und das schließende li-Tag drin, oder? Ich hab das gerade mal in meiner footer.php ausprobiert und es funktioniert. Du rufst das auf einer statischen Seite namens "home" auf, oder? Das sollte IMHO funktionieren. Steht vielleicht davor in der footer.php noch was, was die Ausführung beeinträchtigt?

  • Danke Ammaletu. Der vollständige Footer Link Absatz sieht so aus:

    Die Ausgabe sieht dann so aus (hier war Seite "Firma" angewählt...):

    HTML
    <div id="left_footer_links">
        <ul>
            <li><a href="http://www.webclay.ch/index.php">Startseite</a> &nbsp;|&nbsp; </li>
            <li><a href="http://www.webclay.ch/firma/">Firma</a> &nbsp;|&nbsp; </li>
            <li><a href="http://www.webclay.ch/referenzen/">Referenzen</a> &nbsp;|&nbsp; </li>
            <li><a href="http://www.webclay.ch/kontakt/">Kontakt</a> &nbsp;|&nbsp; </li>
            <li><a href="http://www.webclay.ch/sitemap.xml">Sitemap</a></li>
        </ul>
    </div>
  • Kann es sein, dass is_page case-sensitive ist? Die Seite heißt ja vermutlich "Firma", aber Du prüfst auf "firma". Ansonsten fällt mir jetzt nicht wirklich ein Grund ein, warum das nicht funktionieren könnte.

    Wenn es das nicht ist, muss man vielleicht von Problemen mit Plugins oder dem Theme ausgehen (auch wenn ich nicht wüsste, wie das gehen sollte). Du könntest ggf. diesen Code-Block mal testhalber lokal ins Standard-Theme einbauen und schauen.

    Ach ja, bei "home" fehlt noch das Leerzeichen vor "class". ;-)

  • Die Lösung war dass der Conditional Tag im <a> Tag stehen musste, wieso auch immer :) Aber mit

    HTML
    <li><a href="<?php bloginfo('url'); ?>/index.php" <?php if ( is_page('home') ) { echo 'class="selected"'; } ?>>Startseite</a> &nbsp;|&nbsp; </li>

    funktioniet es einwandfrei...

Jetzt mitmachen!

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