Question

J'ai une page ("Témoignages"). Il a 3 sous-pages ("enfants"): "Appuyez sur", "People", "Enterprises".

Chacune des sous-pages a ses propres sous-pages (petits-enfants de "témoignages"), qui sont les fichiers de témoignages réels.

Je voudrais afficher sur ma page Frontpage la page de petits-enfants la plus récente. Comment puis je faire ça?

J'ai essayé d'utiliser get_pages () comme ceci:

$myposts = get_pages('number=1&child_of=28&sort_column=post_date&sort_order=desc&parent=');

Mais pas de chance: il affiche un enfant ou rien.

Votre aide serait très appréciée.

Était-ce utile?

La solution

Eh bien, il s'avère que la seule façon de le faire fonctionner était de faire une requête spécifique dans la base de données.

Voici la requête et la boucle générée si quelqu'un a le même besoin.

$querystr = "SELECT p3.*

            FROM $wpdb->posts p1
            LEFT OUTER JOIN $wpdb->posts p2 ON p2.post_parent=p1.ID
            LEFT OUTER JOIN $wpdb->posts p3 ON p3.post_parent=p2.ID
            WHERE (p1.post_status = 'publish' AND p1.post_type = 'page' AND p1.ID ='28') AND (p3.post_status = 'publish' AND p3.post_type = 'page') ORDER BY p3.post_date DESC LIMIT 0,1";


            $myposts = $wpdb->get_results($querystr, OBJECT);
            if ($myposts) {

                foreach($myposts as $post) :
                    setup_postdata($post);
                    $postimageurl = get_post_meta($post->ID, 'post-img', true);
                    $postimageurl = ($postimageurl) ? $postimageurl : '/medias/img/temoignage-banner.jpg';
                    ?>

            <div  id="importantBanner" style="background-image:url(<?php bloginfo('url');
                          echo $postimageurl; ?>);margin:0;padding:0;">
                <a style="border-width:0" href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>" id="temoignageLink">
                    <span class="tradeGothic" style="display:block;padding:7px 0 0 20px;font-size:12pt"><?php the_title(); ?></span>
                </a>
            </div>
                <?php endforeach; ?>
                <?  }
            ?>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top