显示自定义帖子类型存档的类别和帖子标题 - Wordpress

时间:2014-01-20 09:41:23

标签: php wordpress custom-post-type categories

我正在尝试设置一个自定义的帖子存档页面,其中显示该自定义帖子的类别,并显示该类别中的帖子。

相关网页正在http://vinnypeculiar.com/wp/lyrics

进行开发

帖子类型称为歌词,该类型中的类别称为专辑(单独列为“专辑”类别)。

因此存档页面应如下所示:

专辑名称#1

  • 来自ALBUM的歌曲#1
  • 来自ALBUM的歌曲#2

专辑名称#2

  • 来自ALBUM的歌曲#1
  • 来自ALBUM的歌曲#2

目前,使用我正在使用的代码,它成功显示了相册名称,但它显示了每个类别下的每个帖子,这是不正确的。

我使用的代码几乎可以使用,但我认为只需要以某种方式进行调整:

<?php
/*Template Name: Lyrics*/
get_header();?>

<div id="content">

<h2>Lyrics & Poems</h2>

<?php
//get all categories then display all posts in each term
$taxonomy = 'album';
$param_type = 'album__in';
$term_args=array(
  'orderby' => 'title',
  'order' => 'ASC'
);
$terms = get_terms($taxonomy,$term_args);
if ($terms) {
  foreach( $terms as $term ) {
    $args=array(
      "$param_type" => array($term->term_id),
      'post_type' => 'lyrics',
    'category' => '%album%',
      'post_status' => 'publish',
      'posts_per_page' => -1,
      'caller_get_posts'=> 1,
  'orderby' => 'title',
  'order' => 'ASC'
      );
    $my_query = null;
    $my_query = new WP_Query($args);
    if( $my_query->have_posts() ) {  ?>
      <div class="category section">
        <h3><?php echo ''.$term->name;?></h3>
        <ul>
        <?php
      while ($my_query->have_posts()) : $my_query->the_post(); ?>
        <li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
       <?php
      endwhile;
      ?>
      </ul>
      </div>
 <?php
    }
  }
}
wp_reset_query();  // Restore global post data stomped by the_post().
?>


</div>


<?php get_footer();?>

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

要在自定义帖子类型(WordPress内)中显示页面标题,请在register_post_type()参数声明中包含supports参数(在functions.php文件中):

    $args = array( 
    'supports' => array('title'),
    );