post_id aus datenbank ermitteln

  • hallo leute

    ich hoffe es kann mit jemand bei folgendem problem helfen:

    ich versuche mein template swoeit unabhängig zu machen, dass ich es bei verschiedenen projekten einsetzen kann, ohne jedesmal 1000e dinge neu anpassen zu müssen. dazu möchte ich mit wp_list_pages() automatisch einige statische seiten excluden. ich habs nun soweit hinbekommen, dass ich in wp_list_pages variablen für die post_id's verwenden kann.

    ich würde also gern in der datenbank nach dem post_name "impressum" suchen und die entsprechende post_id ermitteln.

    nun das problem: beim durchsuchen der datenbank finde ich in der tabelle wp_posts zwar den post_name ("impressum"), dafür keine post_id (sondern nur eine ID, die nicht mit der postID übereinstimmt). in der tabelle wp_post2cat finde ich zwar die post_id und eine rel_id, dafür aber keinen post_name.

    wie kann ich nun die post_id der statischen seite "impressum" aus der datenbank auslesen?


    mfg
    komp

    • 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

  • soeben überprüft

    meine Impressums Seite der Testdomain

    die post id aus der Tabelle _posts ist absolut identisch mit der im Quellcode ;)

    desweiteren 100% identisch mit der aus der Tabelle _post3cat

    ich bin sehr irritiert, dass dem bei Dir nicht so ist

    lg

  • Monika:

    ich hab den wald vor lauter zahlen nicht gesehen! die ID in wp_posts entspricht der post_id.

    war aber auch gemein: ich hatte nämlich 2x den eintrag impressum in der tabelle (durchs editieren oder was auch immer). beim ersten eintrag (dem überfälligen) stimmte die ID klarerweise nicht mit der wirklichen ID überein. beim 2. eintrag, den ich erst jetzt gesehen habe, stimmt die ID mit der realen post_id überein.

    danke monika :rolleyes:

  • ach, sollte sich jemand interessieren, wie ich oben angesprochene problemstellung gelöst habe...hier der quellcode:

    PHP
    <?php
    $id_impressum = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_title = 'Impressum'");
    wp_list_pages('sort_column=post_date&sort_order=desc&title_li=&exclude='.$id_impressum.'');
    ?>

    damit wird automatisch die statische seite namens "Impressum" aus der auflistung ausgeschlossen. die liste lässt sich natürlich beliebig erweitern.

    mfg
    komp

Jetzt mitmachen!

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