サポート » 使い方全般 » fetch_feedによるRSS取得のサイト毎の件数カスタマイズについて

  • 皆様お世話になります。初投稿の初心者のため、情報不足等あるかもしれませんが何卒よろしくお願いいたします。

    複数のブログのRSSを最新順で表示したいと考えています。
    ただし、ブログごとに最大件数を設定したい場合どのようなコードを書けばよろしいでしょうか。

    コードの記述例をお教えいただければ大変助かります。

    <?php
    	include_once(ABSPATH . WPINC . '/feed.php');
    
    	$display_posts_count = 10;
    	$get_posts_count = 40;
    	$rss= fetch_feed(array(
    		'rss1', // feed1
    		'rss2', // feed2
    		'rss3'  // feed3
    	));
    
    	$counter = 0;
    	if (!is_wp_error( $rss) ) :
    		$maxitems = $rss->get_item_quantity($get_posts_count);
    		$feed_items = $rss->get_items(0, $maxitems);
    	endif;
    ?>
    <ul class="blogroll_entries">
    	<?php if ( $feed_items == 0 ) echo '<li>新しい記事はありません</li>';
    		else
    		foreach ( $feed_items as $item ) :
    		if( !preg_match('/^PR:/', $item->get_title() ) && $counter < $display_posts_count ):
    	?>
    	<li class="box-border">
    		<a href="<?php echo $item->get_permalink(); ?>" target="_blank" class="blogroll-link"><div class="blogroll_entry"><?php echo $item->get_title(); ?></div></a>
    	</li>
    	<?php
    		$counter++;
    		endif;
    		endforeach;
    	?>
    </ul>

    上記を元に色々とカスタマイズをしてみたのですが、うまく動きませんでした。
    RSSの取得をして結合するところかなと思ったのですが頓挫しております。

    よろしくお願いいたします

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • モデレーター Daisuke Takahashi

    (@extendwings)

    is_wp_error( $rss )がtrueになってませんか?

    あと、$rss->get_items()で使用する項目の数を指定しているので、$counterを使った$counter < $display_posts_countというチェックは不要です。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「fetch_feedによるRSS取得のサイト毎の件数カスタマイズについて」には新たに返信することはできません。