header nav: publishes pages nicht automatisch auslesen

  • hallo,

    ich hab hier folgenden umfangreichen code im header:




    ich möchte die pages aber manuell verlinken. leider sehe ich bei dem code nicht ganz durch, da er so umfangreich ist. ausserdem muss es noch funktionieren das die class "current_page" bei der ausgewählten seite mit hin geschrieben wird, weil er dann eine andere buttonfarbe hat und ich weiss nicht wie ich das realisieren soll.

    über hilfe würde ich mich sehr freuen.


    mfg und vielen dank im vorraus!
    limit

    Einmal editiert, zuletzt von marX (17. Januar 2009 um 12:57)

    • 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

  • das funktioniert nur das die page dann aus der sidebar verschwindet, aber oben im header wird die dann immer noch gelistet :(

    -> gibts da auch eins was das selbe mit den seiten oben macht?

    Einmal editiert, zuletzt von Limit (17. Januar 2009 um 14:26)

  • okay und welches genau muss ich da jetzt ersetzten, ich habe gerade alle [FONT=Courier New][COLOR=#0000cc]list_all_pages[/COLOR][COLOR=#006600]() [FONT=Verdana][COLOR=black]durch wp_list_pages() ersetzt und da bringt er einen php error[/COLOR][/FONT][/COLOR][/FONT][COLOR=#006600]

    [/COLOR]

  • also das ist wirklich nicht so einfah, ich seh da nicht durch.

    der trick mit der unterseite einer privatenseite klappt auch nicht.

    und ein exclude=ID kann ich da auch nirgendwo einsetzten

  • also das ist wirklich nicht so einfah, ich seh da nicht durch.


    Dann frag nach. :-)

    Zitat

    der trick mit der unterseite einer privatenseite klappt auch nicht.


    Klar!

    Zitat

    und ein exclude=ID kann ich da auch nirgendwo einsetzten


    Na aber sicher doch. Wie hast du es denn versucht?

  • da ich da absolut nicht durchsehe habe ich mich jetzt entschlossen die manuell einzubinden.



    aber das mit der current page klappt ebend noch nicht.. ich seh da nicht durch ich dachte das klappt mit dem if funktionen aber funktioniert nicht richtig, die current class wird nicht eingefügt bei aufrufen der jeweiligen seite.

  • also das mit der privatseite klappt meiner meinung nach nicht, wenn man 'ne seite als privatseite bestimmt dann kann man bei den anderen seiten diese privatseite nicht mehr als übergeordnete seite einstellen! jedenfalls bei 2.7 so.

  • da ich da absolut nicht durchsehe habe ich mich jetzt entschlossen die manuell einzubinden.


    Absoluter Schwachsinn IMHO. ;-)

    PHP
    if (is_page($the_page_id))


    Wo ist $the_page_id definiert? (Die Seiten-ID sollte in $page_id stehen, bin mir aber nicht sicher). Aber ich würde das nicht so machen. Geh doch lieber mal auf meine Fragen ein:

    Zitat von marX

    Wie hast du es denn versucht?


    also das mit der privatseite klappt meiner meinung nach nicht, wenn man 'ne seite als privatseite bestimmt dann kann man bei den anderen seiten diese privatseite nicht mehr als übergeordnete seite einstellen! jedenfalls bei 2.7 so.


    Möglich, ich habs nicht ausprobiert. Wäre auch nicht mein bevorzugter Weg. Ich nehm lieber "exclude". Aber was wenn du erst die Seite als Oberseite zuweist u. dann privat setzt?

  • Absoluter Schwachsinn IMHO. ;-)



    ja ich bin ja auch eher für die automatisierung, aber wenn ich nicht durchsehe dann möchte ich da keine woche dran sitzen damit das funktioniert.

    Zitat
    PHP
    if (is_page($the_page_id))


    Wo ist $the_page_id definiert? (Die Seiten-ID sollte in $page_id stehen, bin mir aber nicht sicher). Aber ich würde das nicht so machen. Geh doch lieber mal auf meine Fragen ein:



    ich habe der list_all_pages() oder der get_the_pa_ges() probiert das exclude in den klammern zu schreiben aber das will er nicht, da bringt er nen php error.

    das mit der if page definition muss ich mir nochmal anschauen muss ich mir noch mal anschauen.

    Zitat


    Möglich, ich habs nicht ausprobiert. Wäre auch nicht mein bevorzugter Weg. Ich nehm lieber "exclude". Aber was wenn du erst die Seite als Oberseite zuweist u. dann privat setzt?



    das hatte ich auch schon probiert, sobald man die oberseite auf privat setzt, löscht er sie wieder als oberseite.
    mein bevorzugter weg ist das auch nicht aber immer noch besser als manuelle einbindung, aber es geht leider nicht.

    Einmal editiert, zuletzt von Limit (17. Januar 2009 um 15:55)

  • also ich nehme jetzt

    PHP
    <ul>
    <li <? if ($page_title = 'impressum') { echo ' class="current_page"'; } ?>> <a href="/impressum" title="Impressum"><span>Impressum</span></a></li>
    </ul>



    das funktioniert auch!

    trotzdem vielen dank für deine hilfe.

  • hi,

    also ich habe es gestern doch anders gelöst:

    PHP
    if ( ! $these_pages = wp_cache_get
    ('these_pages', 'pages') ) {
    $these_pages = $wpdb->get_results('select ID, post_title from '. $wpdb->posts .' where post_status = "publish" and post_type = "page" order by ID'); 
    }



    ich habe einfach "and ID <= "100" hinzegefügt.
    das heisst wenn ich jetzt neue seiten machen haben die eine höhere id als 100 und die werden oben nicht mehr hinzugefügt.

    PHP
    if ( ! $these_pages = wp_cache_get
    ('these_pages', 'pages') ) {
    $these_pages = $wpdb->get_results('select ID, post_title from '. $wpdb->posts .' where post_status = "publish" and post_type = "page" and ID <= "100" order by ID'); 
    }



    mfg limit

Jetzt mitmachen!

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