如何从类别id中获取帖子类型?

时间:2015-04-17 作者:Aftab

我正在尝试从类别id中找出帖子类型。

假设,当我打开一个分类页面时

localhost/project/foobaar/category/pen
我想知道类别笔所属的帖子类型。我有两个名为“book”和“copy”的自定义帖子类型,如果类别笔与book关联,那么它应该将帖子类型返回为“book”,如果类别是pencil,那么它应该返回“copy”,因为我在“copy”帖子中使用了pencil类别。

我尝试这样做(我将类别id存储在变量中,但假设pen的类别id为12)

$args = array (
    posts_per_page => 1,
    category => \'12\' // category id of pen
    );
$posts = WP_Query( $args );
从$posts我可以得到一篇我可以知道的帖子,但是$args使用默认的post\\u类型作为“posts”,我的帖子可以是任何东西。

谢谢

1 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

您只需从主查询中获取第一篇帖子,然后查看它是哪种帖子类型:

if ( have_posts() ) {
    $post_type = $wp_query->posts[0]->post_type;
}
如果您直接在主模板文件中运行此代码,应该可以,但如果它在函数中,则需要调用global $wp_query; 第一

结束