1

私は実際にPHPループを持っており、各結果に1から始まり、昇順で続く番号を付けています。出力は次のとおりです。

1)記事C
2)記事B
3)記事A

...しかし、リスト番号を逆にしたいので、次のようになります。

3)記事C(記事の順序は変更されません。日付順に降順です)
2)記事B
1)記事A

これが私の現在のループです:

<?php
if (have_posts()) :
$counter = 1;
   while (have_posts()) :
      the_post(); ?>

    <div>
        <span class="count"><?php echo $counter; ?></span>
        <?php the_title(); ?>
    </div>

<?php
$counter++;
   endwhile;
endif;
?>

これを行う簡単な方法はありますか?どうもありがとう、

4

3 に答える 3

4

WP_Query オブジェクトには、投稿数を保持する変数があります。

$query->post_count

したがって、コードは次のようになります。

<?php
if (have_posts()) :
   global $wp_query;
   $counter = $wp_query->post_count;
   while (have_posts()) :
      the_post(); ?>

    <div>
        <span class="count"><?php echo $counter; ?></span>
        <?php the_title(); ?>
    </div>

<?php
      --$counter;
   endwhile;
endif;
?>
于 2012-11-19T16:46:20.050 に答える
1

投稿数を返す関数がある場合、たとえばcount_posts()(推測で)、次のように使用します。

<?php
if (have_posts()) :
   $counter = wp_count_posts();
   while (have_posts()) :
      the_post(); ?>

    <div>
        <span class="count"><?php echo $counter; ?></span>
        <?php the_title(); ?>
    </div>

<?php
$counter--;
   endwhile;
endif;
?>
于 2012-11-19T16:40:34.083 に答える
0

これが wordpress ベースのサイト/ページであり、関数に wordpress 関数に関連する投稿がある場合:

query_posts のようなものを使ったほうがよいかもしれません: http://codex.wordpress.org/Function_Reference/query_posts

投稿の表示をより適切に制御できるのはどれですか?

編集:または、これを使用する場合:

$count_posts = wp_count_posts();

カウンターを逆にすることで、これを他の回答と並行して使用できます ($counter--;)

それはトリックを行う必要があります

http://codex.wordpress.org/Function_Reference/wp_count_posts

于 2012-11-19T16:41:21.880 に答える