档案页面中的分类法排序

时间:2015-02-24 作者:Mike

    <?php 
get_header();
?>
<?php

//Define the function

function customize_customtaxonomy_archive_display ( $query ) {
    if (($query->is_main_query()) && (is_tax(\'employee\')))

    $query->set( \'posts_per_page\', \'3\' );
    $query->set( \'orderby\', \'title\' );
    $query->set( \'order\', \'ASC\' );
}

//Hook the function

add_action( \'pre_get_posts\', \'customize_customtaxonomy_archive_display\' );

/**
 * @todo filtering on gov_categorie
 */

?>
<section class="content">
    <div class="wrapper">
        <div class="split-block sidebar-right">
            <div class="main-content" data-animation="fadeInUpSmall">
                <h1>Garderense Ondernemers Vereniging</h1>
                <?php 
                    $loop = new WP_Query(array(
                        \'paged\'          => get_query_var(\'paged\'),
                        \'post_type\'      => \'gov_members\',
                        \'posts_per_page\' => 20,
                        \'tax_query\'      => array(
                            // Note: tax_query expects an array of arrays!
                            array(
                                \'taxonomy\' => \'gov_categorie\', // my guess
                                \'field\'    => \'name\',
                            ),
                        ),
                    ));
                ?>
                <div class="gov-wrapper">
                    <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
                        <div class="gov-block">
                            <a href="<?php echo the_permalink()?>">
                                <h3><?php the_title();?></h3>
                                <p>
                                    <?php echo esc_html(get_post_meta( get_the_ID(), \'gov_address\', true)); ?><br />
                                    <?php echo esc_html(get_post_meta( get_the_ID(), \'gov_postal_city\', true)); ?><br />
                                    <?php echo esc_html(get_post_meta( get_the_ID(), \'gov_phone\', true)); ?><br />
                                </p>
                            </a>
                        </div>
                    <?php endwhile; ?>
                </div>
            </div>
            <aside id="sidebar">
                <?php while ( $loop->have_posts() ) : $loop->the_post();
                    the_terms( $post->ID, \'gov_categorie\' ,  \' \' );
                endwhile; ?>
            </aside>
        </div>
    </div>
</section>
<?php 
get_footer();
?>
使用上面的代码,我没有得到任何结果。

当我删除tax\\u查询时,我得到了所有的结果,我如何更改代码以筛选选定的分类法。

我已经更改了,但仍然没有结果。。。,我正在用一个自定义的帖子类型和一个自定义的分类法来尝试这一点。我也在一个定制的插件中这样做。所以,也许我在另一个文件中做了一些错误的事情,因为当我创建一个taxonomy-gov\\u分类时。php页面找不到它。

1 个回复
SO网友:Przemek Maczewski

您没有在tax\\u查询中指定分类术语。应该是:

\'tax_query\'      => array(
   array(
    \'taxonomy\' => \'taxonomy_name\', // my guess
    \'field\'    => \'name\',
    \'term\'     => \'Term name\'
   ),
 ),
我更喜欢在术语名称更容易更改的情况下使用“field”=>“slug”。

并将评论中提到的“标题”改为“post\\u title”。

结束

相关推荐

Creating a Category Taxonomy

我有一个电视节目娱乐网站。到目前为止,我至少报道了27场演出。我在节目中使用了太多不同的帖子类型,这会减慢网站的速度,我最终想添加更多的节目。我知道必须有一种比创建帖子类型更简单的方法。我想做的是创建一个类别分类法。就像wordpress有一个带有复选框的类别框一样,我想要一个该框的副本,但我不想说类别,而是希望它说“TV SHOW”,链接看起来像这样,我的网站。com/电视节目/节目标题/类别/帖子名称这是可能的还是有更好的方法?。请让我知道我愿意接受所有建议。我不想将节目放在类别中,因为我已经有了类别