我正在创建可以使用自定义分类法(如类别)的wordpress模板。我希望每次点击帖子的类别时,它都会显示该类别的帖子列表。这是我的category.php。
<?php get_header(); ?>
<body>
<div id="container">
<div id="header"><h1><a href="<?php echo get_option('home'); ?>"><?php bloginfo('name'); ?></a></h1></div>
<div id="menu"><?php wp_nav_menu( array( 'sort_column' => 'menu_order', 'menu_class' => 'nav', 'theme_location' => 'primary-menu' ) ); ?></div>
<div id="content">
<div id="blog">
<?php $post = $posts[0]; // Hack. Set $post so that the_date() works. ?>
<?php /* If this is a category archive */ if (is_category()) { ?>
<h2>Archive for the ‘<?php single_cat_title(); ?>’ Category:</h2>
<?php /* If this is a tag archive */ } elseif( is_tag() ) { ?>
<h2>Posts Tagged ‘<?php single_tag_title(); ?>’</h2>
<?php /* If this is a daily archive */ } elseif (is_day()) { ?>
<h2>Archive for <?php the_time('F jS, Y'); ?>:</h2>
<?php /* If this is a monthly archive */ } elseif (is_month()) { ?>
<h2>Archive for <?php the_time('F, Y'); ?>:</h2>
<?php /* If this is a yearly archive */ } elseif (is_year()) { ?>
<h2>Archive for <?php the_time('Y'); ?>:</h2>
<?php /* If this is an author archive */ } elseif (is_author()) { ?>
<h2>Author Archive</h2>
<?php /* If this is a paged archive */ } elseif (isset($_GET['paged']) && !empty($_GET['paged'])) { ?>
<h2>Blog Archives</h2>
<?php } ?>
<?php if(have_posts()) : ?><?php while(have_posts()) : the_post(); ?>
<div class="post">
<br>
<br>
<h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
<div class="entry">
<br>
<?php the_content(); ?>
<p class="postmetadata">
<?php _e('Filed under:'); ?> <?php the_category(', ') ?> <?php _e('by'); ?> <?php the_author(); ?><br />
<?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?> <?php edit_post_link('Edit', ' | ', ''); ?>
</p>
</div>
<br>
<hr>
<br>
</div>
<?php endwhile; ?>
<div class="navigation">
<?php posts_nav_link(); ?>
</div>
<?php endif; ?>
</div>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
我已经整天搜索,没有任何工作。我应该使用什么自定义分类模板存档名称?我必须在这个category.php中改变哪些代码来满足显示自定义分类法档案的需要(可以显示与点击的分类法相关的所有帖子)?
答案 0 :(得分:1)
您应该为属于自定义分类的术语创建taxonomy.php。您只需复制上面的模板并将其命名为taxonomy.php
即可修改强>
在注册两个分类法时,你有一个重大的根本缺陷。
您不能在自定义分类名称中包含空格,这也适用于函数名称和自定义帖子类型名称。以下规则适用,并且没有解决这些问题。
名称不能包含空格或任何特殊字符。
只允许使用小写字母
如果一个名称包含多个单词,您可以仅使用下划线(_
)来分隔它们。不要使用连字符(-
),因为稍后您会遇到问题
有关分类和帖子类型的字符数限制,请参阅codex
因此,简而言之,kategori berita
和tag berita
是无效的名称。它们应为kategori_berita
和tag_berita
。正如我所说,没有解决这个问题。您唯一的解决方案是相应地更改分类名称
答案 1 :(得分:1)
当您的分类法的名称是&#34; roles&#34;时,您可以创建一个名为taxonomy-roles.php的文件。您可以使用术语(在此示例中为&#34; ceo&#34;)进行扩展,如下所示:taxonomy-roles-ceo.php。
正如@pietergoosen所说,你可以复制粘贴你在这些文件中提供的代码。
有关详细信息,请查看以下链接:http://codex.wordpress.org/Template_Hierarchy#Custom_Taxonomies_display