我真的很挣扎。。。我创建了一些自定义的帖子类型,比如说。。。
现在,我也有一大堆现有类别,其中一些类别将应用于多个自定义帖子类型。例如,“可用”类别可以分配给所有这些自定义职位类型。
现在,当我尝试以编程方式或通过前端的归档页面访问类别时,遇到了一大堆问题。
例如,要将所有自定义帖子类型的最新帖子放在主页上,我必须这样做。。。
function get_custom_posts( $query ) {
if ( ! is_admin() && empty($query->query_vars[\'suppress_filters\']) ) { // is not in Dashboard (is_admin => Dashboard)
if ( is_home() ) { // home page
return $query->set( \'post_type\', array( \'post\', \'books\', \'cds\', \'maps\' ) );
} else if .....
}
}
add_filter( \'pre_get_posts\', \'get_custom_posts\' );
我越是发现工作异常,就越需要回去修理。
目前,我正在尝试从“可用”类别中检索所有帖子,以进行幻灯片演示,仪表板显示该类别中有19篇帖子。
但是,当我运行此代码时。。。
<?php
global $post;
$featured_posts = get_posts(
array(
\'post_type\' => array( \'post\', \'books\', \'cds\', \'maps\' ),
\'category\' => get_theme_option(\'featured_posts_category\')
)
);
foreach($featured_posts as $post) {
setup_postdata($post);
$slide_image = get_the_post_thumbnail($post->ID, \'medium\');
echo \'<a href="\'.get_permalink($post->ID).\'">\'.$slide_image.\'</a>\';
....
}
?>
我收到的帖子比我预期的19篇要少得多,而我收到的帖子只来自“CD”自定义帖子类型,其他所有帖子类型都被忽略了。同样,在选择其他类别时,我会得到其他不可预测或奇怪的结果。这一切让我相信,我不应该在多个帖子类型中共享同一类别。。。有谁能证实这一点或进一步解释我在这里可能遗漏了什么?