我有一个问题,在Wordpress中创建一个循环iside主循环。基本上我想在页面上的所有帖子中获得the_excerpt()
。代码看起来像这样,但它仍然只为第一篇文章生成摘录。
<?php $i= 0; ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class="content-post-wrapper">
<p class="postmetadata"><?php the_category( ', ' ); ?></p>
<h2><a href="<?php the_permalink(); ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
<small><?php the_author_posts_link(); ?> <?php echo meks_time_ago(); ?></small>
<?php if ( in_category( '16') ) : ?>
<div class="entry-promo">
<div class="img-wrapper-large">
<?php the_post_thumbnail( 'large'); ?>
</div>
<?php echo awesome_excerpt(wp_trim_excerpt(),1); ?>
</div>
<?php else : ?>
<div class="entry">
<div class="img-wrapper-medium">
<?php the_post_thumbnail( 'thumbnail'); ?>
<?php comments_number(); ?>
</div>
<?php if ( $i<99 ) : ?>
<?php the_excerpt(); ?>
<?php endif; ?>
<?php $i=$i+1; ?>
<!--<?php echo awesome_excerpt(wp_trim_excerpt(),1); ?>-->
</div>
<?php endif; ?>
</div>
<?php endwhile; else : ?>
<p><?php esc_html_e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
我也试过<?php if ( !$post->post_excerpt ) :?>
<!-- Display explicit excerpt-->
<?php the_excerpt(); ?>
<?php endif; ?>
但结果是一样的。 :(
答案 0 :(得分:0)
如果您还没有开启WordPress debugging,首先要做的事情。检查这是否为您提供了任何错误。
另一件事要尝试;暂时忽略其余的逻辑,并在循环开始后直接添加摘录代码。这将有助于简化操作并查看返回的内容(如果有的话)。见下文:
<?php if (have_posts()) : while (have_posts()) : the_post();
the_excerpt();
endwhile; endif; ?>
让我知道你是怎么过的。