我需要列出几个父页面的子页面。
我有child_of属性,但它只列出一个ID,所以我可以列出Id-403但不能列出403,414,417。你们有什么想法我能做到吗?
我尝试了这个,但它没有使用多个页面。
<div id="archive-thumbnails-listing" >
<?php $pages = get_pages(array('child_of' => 379, 'sort_column' => 'post_date', 'sort_order' => 'desc' )); ?>
<?php foreach ($pages as $page): ?>
<div class="thumb12wrap">
<a href="<?php echo get_the_permalink($page->ID); ?>">
<?php echo get_the_post_thumbnail($page->ID, 'full'); ?></a>
<div class="shade23desc" ><a class="desc" href="<?php echo get_the_permalink($page->ID); ?>"><?php echo $page->post_title; ?></a></div>
</div>
<?php endforeach; ?>
</div>
欢迎任何帮助!
答案 0 :(得分:0)
根据documentation,child_of
需要一个整数,而不是一个数组。因此,在您的情况下,您可能需要多次查询
$pages = [];
foreach ([403, 414, 417] as $id) {
$pages = array_merge($pages, get_pages(['child_of' => $id]));
}
对于php&lt; 5.4,试试这个
$pages = array();
foreach (array(403, 414, 417) as $id) {
$pages = array_merge($pages, get_pages(array('child_of' => $id)));
}
在查询后对结果进行排序......
usort($pages, function($a, $b) {
if ($a->post_date === $b->post_date) {
return 0;
}
return $a->post_date > $b->post_date ? -1 : 1;
});