我正在为我的Wordpress网站开发一个作者徽章,我正在学习如何调用元函数(需要在The Loop中)。我调用的元函数是作者生物相关的,如用户名,姓氏等
这是一个代码示例:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
About <?php the_author(); ?>, the author of this blog
<?php userphoto_the_author_thumbnail() ?>
<?php get_the_author_meta( 'description' ); ?>
<?php endwhile; else: ?>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>
我将此示例添加到我的author.php文件中并且它有效,但它多次显示相同的内容(因此循环)。如果我想在Wordpress中调用元函数而不让它们像这样多次回显,我该怎么做?
我确信我做错了,并且有正确的方法来实现它。
如果您选择回复,请详细说明,因为我对PHP编码的了解是我从今天了解到的回声。
答案 0 :(得分:1)
由于您已将此添加到author.php
文件中,因此所有帖子都将由一位作者发布。所以我猜你只想显示一次这个内容。
像这样更改你的代码就可以了:
<?php $show_author_data = TRUE;?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if(!$show_author_data){ ?>
About <?php the_author(); ?>, the author of this blog
<?php userphoto_the_author_thumbnail() ?>
<?php get_the_author_meta( 'description' ); ?>
<?php $show_author_data = FALSE; } ?>
<?php endwhile; else: ?>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>
这仅为第一遍设置$show_author_data
标志。