我有一个页面(“推荐”)。它有3个子页面(“子”):“按”,“人”,“企业”。
每个子页面都有自己的子页面(“推荐”的孙子),这些是实际的推荐文件。
我想在我的首页上显示最近的孙子页面。我怎么能这样做?
我尝试使用像这样的get_pages():
$myposts = get_pages('number=1&child_of=28&sort_column=post_date&sort_order=desc&parent=');
但没有运气:它既可以展示孩子,也可以不展示任何东西。
非常感谢您的帮助。
答案 0 :(得分:1)
嗯,事实证明,我能让它发挥作用的唯一方法就是在数据库中进行特定的查询。
这是查询,以及生成的循环,如果有人有相同的需求。
$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; ?>
<? }
?>