query_posts > zeige Child-Page von ID=xy

  • Hallo,

    Ich möchte in einem Template folgendes darstellen:

    Absteigende Reihenfolge; [COLOR=Red]zuerst: die Page m d ID=79;[/COLOR] dann: alle Child-Pages der Page mit der ID 79;

    das ist, was ich bis jetzt habe.

    PHP
    <?php query_posts('post_type=page[COLOR=Red]&id=79[/COLOR]&post_parent=79&order=asc'); ?>

    Konnte leider nicht heraus finden wie ich die Page m d ID=79 zusätzlich/vor zu den Child-Pages der ID=79 anzeige. [COLOR=Red]&id=79 [COLOR=Black]ist es auf jeden Fall nicht.[/COLOR][/COLOR]. Die Child-Pages tauchen wunderbar auf. Die Page ID=79 leider nicht. [COLOR=Red]&page_id=79 [COLOR=black]ist [/COLOR][/COLOR]es auch nicht, da dann die Child-Pages nicht mehr auftauchen..

    Firebug laden! Foreregeln bitte lesen. FAQ. Bitte keine Anfragen per PN.

    Einmal editiert, zuletzt von kaiser (26. November 2008 um 18:31)

    • 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

  • du hast ein template erstellt für eine extra statische Seite nehm ich mal einfach an


    hast dem Template einen Namen gegeben

    der *child page Loop ist ein Loop
    der klassische Loop einer statischen Seite wäre der, der die Page mit der ID 79 anzeigt, wenn Du dieses template bei der page mit der ID 79 verwendest


    ich hoff das ist jetzt nicht zu konfus erklärt

    also template mit 2 Loops
    klassischer Loop einer page.php
    dann der obige

    lg

  • hey Monika, konfus nicht wirklich. Nur etwas zu hoch für mich...

    mal schauen, ob ich es richtig verstanden habe:

    PHP
    <?php query_posts('post_type=page&page_id=79&order=asc');?>
    // dann:
    <?php query_posts('post_type=page&post_parent=79&order=asc'); ?>


    der gesamte Code des Templates "LogIn" für die statische Page id=79:

    das haut bei mir nämlich nicht wirklich hin... zeigt nämlich dann einfach gar nix an.

  • nein so meinte ich es nicht


    der *normale Loop* beginnt mit

    if have post while have post the post

    hat dein theme eine page.php oder eine index.php

    wenn ja dann schau dir dort mal den Loop an

    lg

  • nochmals ich

    PHP
    <?php get_header(); ?>
    <?php /* if (is_front_page()) {query_posts("cat=3");} */ ?> 
    <?php query_posts('post_type=page&page_id=79&order=asc');?>
    <?php query_posts('post_type=page&post_parent=79&order=asc'); ?>

    das bedeutet
    :wenn es die Startseite ist, dann zeige die Artikel aus der Cat 3 an
    gleich darunter, hol dir die Seite mit der ID 79 -wieso sollte man eine einzige Seite ordnen? ergibt keinen Sinn also das order Asc eine statische Seite zeigt ja standard mäßig nur 1 Text an (mit Bildern und allem pipapo aber nur 1)
    dann hold die Kindseiten von der Seite

    also was soll WP jetzt tun
    die Artikel aus der Cat 3 holen oder die eine statische Seite ordnen oder deren Kindseite anzeigen

    wenn dann musst Du die 3 Loops untereiander geben und bei jedem Loop eine Ausgabe machen

    so gibt es 1 Ausgabe aber 3 Befehle

    #########
    da tätich auch streiken ;)

  • Hey Monika,

    hoffe Du streikst noch nicht... ;)

    Dieser Code:

    PHP
    <?php query_posts('post_type=page&page_id=79
    &post_parent=79&order=asc'); ?>

    ...ist der eigentlich richtige (so wie in meinem obersten Text). Das Problem ist eben, dass ich trotz &page_id=79&post_parent=79 nur die child-pages (also die ausgabe von post_parent) bekomme. Wie bekomme ich da die page_id=79 auch noch hinein? Und das vor allem vor den child-pages?

    Mein Problem ist nämlich, dass ich zwar dieses Problem für meine Situation lösen kann, indem ich einfach eine weiter child-page anlege, dann aber mit diesem Problem, dass wir beide in einem anderen Thread schon diskutiert haben, zu tun habe und dann halt dieses wieder nicht lösen kann...

    Mir ists ja schon recht, wenn ich eines der beiden Probleme löse, weil mich beide irgendwie zum selben Ziel bringen... Tja. Alle Wege führen nach Rom. Bloß muss man erstmal wenigstens einen funktionierenden finden. :D

    *******

    Ps. Hier die beiden Loop-Einleitungen aus der login.php (Template) und der Index.php:

    index.php:

    PHP
    <?php if (is_front_page()) {query_posts("cat=4");}?> 
    
    
    <div id="page">
        <div id="slider">    
            <ul class="navigation">
    <?php while (have_posts()) : the_post(); ?>

    login.php: (template)

    PHP
    <?php query_posts('post_type=page&post_parent=79&order=asc'); ?>
    
    
    <div id="page">
        <div id="slider">    
            <ul class="navigation">
    <?php while (have_posts()) : the_post(); ?>

    Firebug laden! Foreregeln bitte lesen. FAQ. Bitte keine Anfragen per PN.

    Einmal editiert, zuletzt von kaiser (27. November 2008 um 16:03)

  • ich vermute das Code-magnichtwasichwill begann mit der Feststellung:

    Zitat

    Ich möchte in einem Template folgendes darstellen:


    wie ich kapierte magst Du:

    den Inhalt der Seite mit der ID79
    und darunter den Inhalt oder die Links zu den Unterseiten von dieser Seite-ID79

    ##########

    ob Du diese Seite-ID79 nachher als Startseite definierst im Admincenter oder nicht ist nur der krönende Abschluss ;)

    #######

    Wieso: zur Darstellung des Inhalts oder auch nur des Links zur Seite-ID79 brauchst Du ja kein völlig neues Template, die hat ja bereits eines ;)

    also musst Du nur dieser Seite-ID79 ein Template zuweisen wo auch die Kinder angezeigt werden können

    ##

    habe ich bis hierher Dich richtig verstanden?

    lg


  • wie ich kapierte magst Du:

    den Inhalt der Seite mit der ID79
    und

    daneben

    den Inhalt oder die Links zu den Unterseiten von dieser Seite-ID79



    richtig! :D

    ob Du diese Seite-ID79 nachher als Startseite definierst im Admincenter oder nicht ist nur der krönende Abschluss ;)


    die index.php ist eigentlich eine komplett andere seite. deswegen kommen dort auch nur artikel a d kategorie "4"

    Wieso: zur Darstellung des Inhalts oder auch nur des Links zur Seite-ID79 brauchst Du ja kein völlig neues Template, die hat ja bereits eines ;)

    also musst Du nur dieser Seite-ID79 ein Template zuweisen wo [COLOR=Red]auch[/COLOR] die Kinder angezeigt werden können

    habe ich bis hierher Dich richtig verstanden?

    lg

    Ja! Volle richtig! Nur funktioniert´s nicht. Mit dem

    PHP
    <?php query_posts('post_type=page&page_id=79
    &post_parent=79&order=asc'); ?>


    tauchen leider nur die child-pages auf... page_id=79 wird nicht aufgerufen im menü. ich bekomme der reihe nach die child-pages, aber leider bekomme ich (weder den link fürs menü, noch den kontent) die parent_page nicht. Link zur Seite ist hier. Es geht mir um die Seite "Aussteller" (rechter Menüpunkt 3/3).

    lg.

  • das da ist der Code der page.php des default themes

    NACH endwhile endif und nach edit this entry

    Dein Coder der die childpages anzeigt

    und ganz oben den Namen für das Template , damit Du es auswählen kannst

    html nach Gusto ändern

    lg

Jetzt mitmachen!

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