Probleme mit "is_page"

  • Ich teste gerade für meine statische Navigation folgendes:

    Im Test funktioniert es einwandfrei (Thema WP Default 1.6)

    Wenn ich das ganze aber umstricke (hier ein teil meiner org. Navi)

    dann klappt es nicht!
    Wenn ich auf Sport (page_id=27) klicke, dann geht die navi auf und bleibt es auch wenn ich auf 2010 (page_id=1866) und auf Weitere ... (page_id=1863) drücke.
    Beim druck auf 2009 (page_id=154) geht die Navi aber zu.
    (Thema WP Default DE-Edition 1.6)

    Das gleiche Verhalten habe ich auch bei der restlichen Navigation.
    Teile Funktionieren, andere nicht.
    Aber immer die gleichen. Kann das am oder (||) in der IF Abfrage liegen?

    Thx Römi | roemi.de

    Einmal editiert, zuletzt von maxe (7. Oktober 2009 um 14:04)

    • 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

  • Wenn ich nicht was auf den Augen habe, fehlt im zweiten Code-Ausschnitt die schließende Klammer der if-Abfrage. Müsste das nicht eigentlich einen Parse-Fehler verursachen?!

  • Stimmt, eine Klammer fehlt (rot markiert), hab es jetzt auch mal als Code formatiert (anstatt Zitat).

    Vielleicht liegt es auch an der nicht aufsteigenden Reihenfolge. Setzt mal in aufsteigender Reihenfolge:

    PHP
    <?php if(is_page('27')||is_page('154')||is_page('1863)||is_page('1866')[COLOR=Red])[/COLOR]{ ?>

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Sry, mein Fehler (beim kopieren nicht aufgepasst oder was auch immer).
    Bei mir gibt es keinen Fehler da richtig :oops:

    Oki, das Problem bleibt aber leider :cry:

    Thx Römi | roemi.de

  • Hi,

    ich habe nun folgendes in die Sidebar eingebaut:

    Wer will kann sich selbst auf roemi.de überzeugen das die Page-ID nicht immer geliefert wird. Warum?

    Thx Römi | roemi.de

  • So, Blick auf die Seite hat weitergeholfen, denke ich: So wie ich das sehe, manipulierst Du auf allen betroffenen Seiten den Loop, sprich Du baust einen Loop in eine Seitenausgabe ein. Wenn man das nicht richtig macht, werden die Originalvariablen vom Original-"Loop" überschrieben und Methoden wie is_page gehen dann nicht mehr. Ist jetzt mal meine Vermutung.

    Ein korrektes Beispiel, wie man einen Loop auf einer Page einbaut, könnte so aussehen:

    PHP
    $dor_query = new WP_Query('cat=123&showposts=6');
    if ($dor_query->have_posts()) {
      while ($dor_query->have_posts()) : $dor_query->the_post();
        // ...
      endwhile;
    } /* end if posts */

    Hier habe ich eigene Variablen verwendet. Alternativ kannst Du Dir $post auch in einer Variablen $old_post merken und nach dem Loop wieder $post zuweisen. das müsste auch gehen.

  • Ahhhh ... anstelle von Loop ... das kann sein und das probiere ich nachher gleich. Es stimmt. Ich verwende ein angepasstes Loop.

    Thx erstmal, ich melde mich

    Thx Römi | roemi.de

Jetzt mitmachen!

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