您是否尝试添加筛选器以获取\\u帖子。这不是经过测试的,只是经过一点搜索后的一个想法:
function my_filter( $query )
{
if( is_home() ) //Example, if u want to display recent images on home
{
$query->set( \'post_type\', array( \'attachment\', \'my_cpt\' ) );
}
}
add_filter( \'pre_get_posts\', \'my_filter\' );
EDIT :在重读之后,我认为它并没有完成您想要做的事情,我认为它将显示您的CPT的附件和帖子。
我想我会把它留在这里,以防它给你任何想法。
EDIT 2:除了在PHP中过滤之外,我能想到的唯一其他方法是自定义sql查询,然后设置post数据。例如:
$sql = "SELECT * FROM wp_posts
WHERE post_type = \'attachment\'
AND post_parent IN (SELECT ID FROM wp_posts WHERE post_type = \'your-cpt\')
//ORDER BY";
$posts = $wpdb->get_results( $sql, OBJECT );
//loop - setup_postdata
更多信息:
Wordpress Codex