我有一个自行创建的WordPress图库,列出了页面缩略图。我有3个(编辑,个人,时尚)子页面(画廊)的父页面。
我尝试从这3个父页面列出页面缩略图,但我的列表有一个问题。它首先列出来自第一个id(编辑)的所有子缩略图(页面),然后列出来自id(个人)的所有子页面,最后列出所有id(时尚)的子节点。当我添加一个新的图库(页面)(类别:时尚)时,它会在个人结束时和其类别的开头列出。我需要在列表的开头(通过postdate)列出它。
我会展示我所拥有的内容并附上截图以使我的问题更加清晰。会很乐意提供任何帮助。
我目前的代码:
<div class="base-content">
<div id="archive-thumbnails-listing" >
<?php $pages = array();
foreach (array(403, 414, 417) as $id) {
$pages = array_merge($pages, get_pages(array('child_of' => $id ,'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="thumbwrapper88">
<div class="shade23desc" ><a class="desc" href="<?php echo get_the_permalink($page->ID); ?>"><?php echo $page->post_title; ?></a></div>
<a class="descarea" href="<?php echo get_the_permalink($page->ID); ?>"></a>
</div>
</div>
<?php endforeach; ?>
</div>
<div style="float:left;height:50px;width:100%;position:relative;"></div>
</div>
答案 0 :(得分:0)
您的问题似乎是您按照循环父ID的顺序将子页面添加到$pages
数组中,然后迭代该数组而不对其进行排序。
如果您希望按照日期顺序显示父页面子项的所有缩略图,最好在单个查询中执行此操作。
这应该可行,但显然无法测试它! WP_Query
使用post_parent__in
指定父ID,然后按日期对所有子结果进行排序。我已经使用了循环&#39;迭代结果。
<div class="base-content">
<div id="archive-thumbnails-listing" >
<?php
$gallery = new WP_Query(array(
'post_type' => 'page',
'posts_per_page' => -1,
'post_parent__in' => array(403, 414, 417),
'order' => 'DESC',
'orderby' => 'date'
));
?>
<?php while ($gallery->have_posts()) : $gallery->the_post() ?>
<div class="thumb12wrap">
<a href="<?php echo get_the_permalink(); ?>">
<?php echo get_the_post_thumbnail(get_the_ID(), 'full'); ?></a>
<div class="thumbwrapper88">
<div class="shade23desc" >
<a class="desc" href="<?php echo get_the_permalink(); ?>">
<?php echo get_the_title() ?>
</a>
</div>
<a class="descarea" href="<?php echo get_the_permalink(); ?>"></a>
</div>
</div>
<?php endwhile ?>
<?php wp_reset_query() ?>
</div>
<div style="float:left;height:50px;width:100%;position:relative;"></div>