0

我希望有人能帮忙。我不是 php 编码员,但无论如何我一直在为 wordpress 定制和定制一个高级主题,但我被困住了。

我试图从默认列出所有类别的页面中排除特定类别。好的,没问题。它应该是:

<?php query_posts($query_string . '&cat=-134'); ?>

正确的?

我很确定类别编号是 134,但我可能是错的。我使用的高级主题称为 Risen,并且有很多不同类型的帖子 - 所以我认为的类别可能实际上是自定义分类法中的标签 - 在这种情况下 ???

当我将鼠标悬停在类别列表中时,我得到以下信息:

example.com/wp-admin/edit-tags.php?action=edit&taxonomy=risen_multimedia_category&tag_ID=134&post_type=risen_multimedia

我很确定我已经找到了需要包含我的论点的地方,并且在模板中:

// Get posts
$multimedia_query = new WP_Query( array(
    'post_type'         => 'risen_multimedia',
    'posts_per_page'    => risen_option( 'multimedia_per_page' ) ? risen_option(  'multimedia_per_page' ) : risen_option_default( 'multimedia_per_page' ),
    'paged'             => risen_page_num() // returns/corrects $paged so pagination works on static front page
) );

我试过添加

'tag'   => -134

对这个数组无济于事。

4

1 回答 1

0

作为一个优质且经过明显调整的主题,这里有很多猜测,但我认为您已经说服自己解决了这个问题,除了一个细节。tag__not_in不使用tag=-134

// Get posts
$multimedia_query = new WP_Query( array(
    'post_type'         => 'risen_multimedia',
    'posts_per_page'    => risen_option( 'multimedia_per_page' ) ? risen_option(  'multimedia_per_page' ) : risen_option_default( 'multimedia_per_page' ),
    'paged'             => risen_page_num() // returns/corrects $paged so pagination works on static front page
    'tag__not_in'       => array(134)
) );

tag_id=-134可能有效(我必须对其进行测试),但tag希望标签 slug 不是 ID。

标签(字符串) - 使用标签标签
http://codex.wordpress.org/Class_Reference/WP_Query#Tag_Parameters

于 2013-01-07T01:01:54.043 回答