我在使循环成为Wordpress的主循环时遇到问题。基本上, 我想为页面上的所有帖子获取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):?> <!-显示显式摘录-> <?php the_excerpt(); ?> <?php endif; ?>, 但结果是相同的。 🙁
#1
如果你还没有做的第一件事就是打开WordPress调试功能。检查这是否为你提供任何错误。
另一件事要尝试;现在暂时忽略其余逻辑, 并在循环开始后立即添加摘录代码。这将有助于简化操作, 并查看返回的内容(如果有)。见下文:
<?php if (have_posts()) : while (have_posts()) : the_post();
the_excerpt();
endwhile; endif; ?>
让我知道你是怎么办的。
评论前必须登录!
注册