Wordpress:从所有填充的类别中检索前五个项目

时间:2013-09-30 16:33:56

标签: wordpress categories

我正试图找到一种方法来实现以下目标:我想制作一个自定义模板。在此模板中,我想列出我的网站上至少分配了1个项目的每个类别的名称。在类别名称(和链接)下面,我想从分配了特定类别的前x个项目中插入一些内容。

如果它产生巨大差异,则相关项目不是帖子,而是自定义项目。

任何人都可以给我一些指示或帮助吗?我假设我可以用wp_query函数做些什么,但我不确定如何在每个类别标题之间注入它,或者实际上如何使它与我无法明确提供的类别一起工作代码中的id。)

谢谢。

4 个答案:

答案 0 :(得分:0)

您必须使用query_posts功能

query_posts(array('category_name'=>'category-slug','posts_per_page'=>'5'));

然后你需要做

while ( have_posts() ) : the_post();

您可以使用以下方式获取帖子ID:

$p_id = get_the_ID();

了解更多信息:query_posts

答案 1 :(得分:0)

get_posts()是您理想的解决方案。例如:

<?php $posts_array = get_posts( $args ); ?>

<?php $args = array(
'posts_per_page'   => 1,
'category'         => $post_cat,
'orderby'          => 'post_date',
'order'            => 'DESC',
'post_type'        => 'yourcustompostname',
'post_status'      => 'publish',
'suppress_filters' => true ); 


$myposts = get_posts( $args );

///respective loop here ie : foreach $myposts as $mypost ... etc

?>

$post_cat是您的类别的ID,post_type是自定义帖子类型。

为了保持这些“项目”的有序性,我会创建一个custom post,然后为每个相应的类别(如果有多个)分配这些帖子的类别。如果只有一个,那么你只能使用一个类别。

编辑:

要获取分配给此自定义帖子的类别,请查看此link

使用此结果,您可以将cat id分配给之前创建的变量:$post_cat

答案 2 :(得分:0)

您可以使用get_categories()

http://codex.wordpress.org/Function_Reference/get_categories

但是,你需要找出“项目”的数据存储位置,并根据需要进行查询。

答案 3 :(得分:0)

以下是您的问题的答案。您需要更改自己的帖子类别ID的类别ID。 这是代码。只是复制并过去它。

$query1 = new WP_Query( array( 'post_type' => 'post','cat' =>'10,9') );

在循环和循环后使用上述查询,重置您的查询。见下面的代码。

wp_reset_query();

请使用它,如果需要,请告诉我。