wordpress をよく知っている人への最初の質問: リソース/システムの負荷に関しては、mysql に直接クエリを実行し、そこで結果を並べ替える方がよいでしょうか? または wordpress フック WP_query を使用してすべての投稿を取得し、コメント変数に従って並べ替えますか?
私はこのコードを持っています、それはすべてをフェッチします。comments_number( '0', '1', '%' );
このリストを(コメントの多いものを上に) 並べて、表示される合計数を上位 4 つに制限したいと思います。
これまでの私のコード:
<ul>
<?php
global $post;
$all_events = tribe_get_events(
array(
'eventDisplay'=>'upcoming',
'posts_per_page'=>-1
)
);
foreach($all_events as $post) {
setup_postdata($post);
?>
<li>
<a title="<?php the_title(); ?>" href="<?php the_permalink(); ?>">
<?php
if ( has_post_thumbnail () ) {
echo get_the_post_thumbnail(array(100,100));
} else {
echo '<img width="100" height="100" alt="'
.get_the_title().'" title="'
.strip_tags(get_the_excerpt()).'" src="'
.get_bloginfo('template_url')
.'/thumbs/event-recent-thumb-na.png">';
}
?>
</a>
<h3><a title="<?php the_title(); ?>" href="<?php the_permalink(); ?>">
<?php the_title(); ?></a></h3>
<span><?php echo tribe_get_start_date( $p->ID, true, 'M j, D.' ) . " - "
. tribe_get_end_date( $p->ID, true, 'D.' ); ?></span>
<p><?php echo strip_tags(get_the_excerpt()); ?></p>
<span class="eventinterested"><?php comments_number( '0', '1', '%' ); ?>
<?php _e('interested so far','holidayge'); ?></span>
</li>
<?php } //endforeach ?>
<?php wp_reset_query(); ?>
</ul>
そこにリストを変更foreach
して注文する方法はありますか? 私はphpプログラマーではありませんが、論理的に思えます...私はSortのように見える正しい解決策について読んでいますか?