查询wordpress中的帖子

时间:2013-05-19 19:57:01

标签: wordpress-theming wordpress

我想在word_press开始之前过滤我的查询结果。我只希望term_id或term_taxonomy_id等于1的结果。

query_posts('post_type=my_post&term_id=1&posts_per_page=6');

这是返回所有行,我是新手,所以我不确定我们可以在query_posts中使用term_id。还有其他办法吗?

2 个答案:

答案 0 :(得分:0)

实际上,帖子类型不是分类法,帖子类型基本上是postpageAttachmentRevisionNavigation Menu和{{ 1}}并创建自定义帖子类型,我们使用Custom Post Types,因此您没有创建自定义帖子类型(我从您的评论中获得),而是使用{{{}创建了自定义分类3}}函数,在这种情况下,register_post_type()中的第一个参数是分类法名称,第二个参数是分类法的对象类型的名称,对象类型可以内置Post Type或任何自定义可能已经注册的帖子类型。所以,根据你给出的例子,吼叫

register_taxonomy()

在上面的代码中,您创建了一个自定义分类法,它的名称为register_taxonomy( 'mumG', 'mumT', array( 'label' => __( 'Label' ), 'show_ui' => false, ) ); ,第二个参数mumG用作分类法的对象类型,似乎没有这样的对象({1}}中的(post_type),除非您没有使用register_taxonomy()函数注册/创建一个自定义帖子类型。因此,如果您不想为此分类法创建自定义帖子类型,那么您应该使用内置帖子类型mumT代替WordPress作为帖子类型,并且可以使用以下{ {1}}要检索

post

否则,如果您想使用自定义帖子类型,则必须先创建自定义帖子类型,然后在mumT(第二个参数)的位置使用自定义帖子的名称,如< / p>

query

并在查询中使用$args = array( 'post_type' => 'post', // if post_type is post 'showposts' => -1, 'tax_query' => array( array( 'taxonomy' => 'mumG', 'terms' => 1, 'field' => 'term_id', ) ), 'orderby' => 'title', 'order' => 'ASC' ); query_posts( $args ); 。请阅读这些文件,以便更好地理解法典,register_post_type()register_taxonomy()register_post_type()

答案 1 :(得分:0)

将分类法类别名称(sliders_category)替换为您的分类法类别名称。

$args = array(
                'tax_query' => array(
                                    array(
                                            'taxonomy' => 'sliders_category',
                                            'field' => 'id',
                                            'terms' => '1'
                                          )

                            ),
                'post_type'=>'my_post',
                'order'=>'ASC',
                'posts_per_page'=>6

                );

query_posts($args);