2016-07-06 16 views
1

サイトのネットワークの最後の2つの投稿を表示する必要があります。現在、すべてのサイトのすべての最新投稿を取得していますが、そのうちの2つを表示したいだけです。ワードプレスマルチサイト、すべてのサイトを表示しますが、最後の2つを表示したいだけです

I持って次のコード:

<?php 
    $items = return_latest_posts(); 
    global $wpdb; 
    $table_search = $wpdb->prefix . "searchinfo"; 
    $query = "SELECT * FROM `$table_search`"; 
    $wpdb->show_errors(); 
    $results = $wpdb->get_results($query); 

    foreach ($results as $site){ 
    $item = return_latest_posts_single_site($site->username,$site->password,$site->database,$site->host,$site->db_prefix); 
    ?> 

<li> 
    <h4><?php echo $site->sitename; ?></h4> 

    <?php foreach($item as $res){ ?> 
    <p class="date"><?php echo $res->post_date ?></p> 
    <h4><a href="<?php echo $res->guid; ?>" target='_blank'><?php echo $res->post_title ?></a></h4> 
    <?php } ?> 

    <hr /> 

</li> 

<?php } ?> 

どのように私は一緒にのみ、すべてのサイトの最後の2つのポストを示すことができるのですか?

ありがとうございます!

答えて

1

あなたは$結果のforeachの実行回数をカウントし、最初の2周への出力を制限する検討するかもしれない:あなたの答えジェームズため

<?php 
    $items = return_latest_posts(); 
    global $wpdb; 
    $table_search = $wpdb->prefix . "searchinfo"; 
    $query = "SELECT * FROM `$table_search`"; 
    $wpdb->show_errors(); 
    $results = $wpdb->get_results($query); 

    $count = 0; 
    foreach ($results as $site){ 

    $count++; 
    $item = return_latest_posts_single_site($site->username,$site->password,$site->database,$site->host,$site->db_prefix); 

    if ($count < 3) { 

    ?> 

    <li> 
     <h4><?php echo $site->sitename; ?></h4> 

     <?php foreach($item as $res){ ?> 
     <p class="date"><?php echo $res->post_date ?></p> 
     <h4><a href="<?php echo $res->guid; ?>" target='_blank'><?php echo $res->post_title ?></a></h4> 
     <?php } ?> 

     <hr /> 

    </li> 

<?php }} ?> 

More information on $wpdb;

+0

感謝。問題は、私はまだすべてのネットワーク(7サイト)+1の投稿を取得することです。私は、最新のネットワークアップデート(最新の2件の記事)を表示したいだけです。 – rwzdoorn

+0

私はあなたの目標を誤解していたと思います。これは正確ですか?目標は2つのブログ投稿のみを表示することです。これらの投稿はネットワーク上の最新の投稿である必要がありますか? –

+0

これは私が探しているものです! – rwzdoorn

関連する問題