用于归档自定义分类的自定义模板

时间:2017-07-16 作者:Nicky Logan

我制定了一个名为“活动”的自定义分类法,其中包含名为“本地”、“成员”和“国家”的项目:

<?php
function add_custom_taxonomies() {
    register_taxonomy(\'Activities\', \'post\', array(
        \'has_archive\' => true,
        \'hierarchical\' => true,
        \'labels\' => array(
            // labels goes here
        ),
        \'rewrite\' => array(
            \'slug\' => \'activities\',
            \'with_front\' => true, 
            \'hierarchical\' => true
        ),
    ));
}
add_action( \'init\', \'add_custom_taxonomies, 0 );
我已经创建了每个分类项目一个页面taxonomy-activities-local.php, taxonomy-activities-member.php, 和taxonomy-activities-national.php.

访问mydomain.com/activities/local/ 一切都很好。但是访问mydomain.com/activities/ 自身重定向到404页。我完全理解这通常不应该起作用。就像访问mydomain.com/tag/, 这也会重定向到404页。

有没有办法使用我制作的模板PHP文件?因此,访问mydomain.com/activities/ 使用该PHP文件而不是404页面,而不使用任何插件?

1 个回复
SO网友:dbeja

我认为最好的方法是创建一个自定义模板页面,并在该模板上获取术语列表(或任何您需要的术语)。

模板活动分类法。php

<?php
/* Template Name: Activities Taxonomy */

get_header(); ?>

<?
$terms = get_terms( \'activities\' );
if ( ! empty( $terms ) && ! is_wp_error( $terms ) ): ?>
    <ul>
    <?php foreach ( $terms as $term ): ?>
        <li><a href="<?php echo esc_url( get_term_link( $term ) ); ?>"><?php echo $term->name; ?></a></li>    
    <?php endforeach; ?>
    </ul>
<?php endif; ?>

<?php get_footer(); ?>
然后只需创建一个使用该模板的url(/活动)页面。

结束

相关推荐

customize taxonomy Page

有没有一种解决方案可以自定义分类法页面并使其类似于带有标题h1和自定义侧栏的类别页面?这是我的分类代码:register_taxonomy(\'director\', \'post\', array( \'hierarchical\' => false, \'label\' => \'Realisateur\', \'query_var\' => true, \'rewrite\' => $rewrite2));