-1

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 コーディングに関する私の知識は、今日のエコーとは何かを学んだ程度のものです。

4

1 に答える 1

1

これをauthor.phpファイルに追加したので、すべての投稿は 1 人の作成者によるものになります。したがって、このコンテンツを一度だけ表示したいと思います。

コードを次のように変更すると、次のようになります。

<?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、最初のパスのみにフラグが設定されます。

于 2012-08-22T18:10:05.943 に答える