WordPress: отображение ссылки на последнего внука на главной странице - PullRequest
1 голос
/ 11 января 2010

У меня есть страница ("отзывы"). Имеет 3 подстраницы («дети»): «пресса», «люди», «предприятия».

Каждая из подстраниц имеет свои собственные подстраницы (внуки "Отзывы"), которые являются фактическими файлами отзывов.

Я хотел бы отобразить на своей главной странице самую последнюю страницу внуков. Как я могу это сделать?

Я пытался использовать get_pages () так:

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

Но не повезло: он либо отображает ребенка, либо ничего.

Ваша помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 11 января 2010

Что ж, получается, что единственный способ заставить его работать - это выполнить определенный запрос в базе данных.

Вот запрос и сгенерированный цикл, если у кого-то есть такая же потребность.

$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; ?>
                <?  }
            ?>
...