我想在特定页面上显示所有帖子,名为"文章"。
但是,当我在循环中使用the_title();
时,似乎会显示此页面的标题。
articles.php
中的相对代码(链接到信息中心内创建的Articles
页面)
<div class="container">
<?php if ( have_posts() ) : ?>
<div class="content">
<?php while ( have_posts() ) : the_post(); ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php get_template_part( 'content', get_post_format() ); ?>
</div>
<?php endwhile; ?>
</div>
<?php endif; ?>
</div>
content.php
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" class="post-header section medium-padding">
<div class="post-meta-top">
<?php the_time(get_option('date_format')); ?>
<?php
if ( comments_open() ) {
echo '<span class="sep">/</span> ';
if ( is_single() )
comments_popup_link( '0 comments', '1 comment', '% comments', 'post-comments' );
else
comments_number( '0 comments', '1 comment', '% comments' );
}
?>
</div>
<h2 class="post-title"><?php the_title(); ?></h2>
</a>
这部分适用于index.php
。
答案 0 :(得分:1)
步骤1:在content.php文件夹中创建一个新模板articles.php并插入此代码:
<?php
$articles = new WP_Query( array( 'posts_per_page' => -1 ) );
while ( $articles->have_posts() ) :
$articles->the_post();
?>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" class="post-header section medium-padding">
<div class="post-meta-top">
<?php the_time(get_option('date_format')); ?>
<?php
if ( comments_open() ) {
echo '<span class="sep">/</span> ';
if ( is_single() )
comments_popup_link( '0 comments', '1 comment', '% comments', 'post-comments' );
else
comments_number( '0 comments', '1 comment', '% comments' );
}
?>
</div>
<h2 class="post-title"><?php the_title(); ?></h2>
</a>
<?php endwhile; ?>
第2步:在articles.php中替换此行:
<?php get_template_part( 'content', get_post_format() ); ?>
这一个:
<?php get_template_part( 'articles' ); ?>
未经测试但应该可以使用。