WordPressに入っていたのですね。Simple Pieです。
キャッシングもしてくれますし、以前は取得した結果をDBに保存したりしてて、損しちゃった。
$feeduri = 'http://example.com/feed/uri/here'; $rss = fetch_feed( $feeduri ); if ( ! is_wp_error( $rss ) ): $maxitems = $rss->get_item_quantity( 4 ); // 4件表示 $rss_items = $rss->get_items( 0, $maxitems ); endif; if ( !$rss_items ): echo '<p><a href="http://example.com/" target="_blank">おもしろブログだよ。読みに来てね♡</a></p>'; else: foreach ( $rss_items as $i ) { ?> <li><a href="<?php echo esc_url( $i->get_permalink() ) ?>" target="_blank"><?php echo esc_html( $i->get_title() ); ?></a></li> <?php } endif;
キャッシングは、transient APIなのですが、12時間がデフォルト。変更には下記。
function return_3h( $seconds ) { return 1*60*60*3; } add_filter( 'wp_feed_cache_transient_lifetime' , 'return_3h' );
コメント
コメント一覧 (1件)
[…] し、よそのサイトにも迷惑になりますが、この方法であればデフォルトで12時間キャッシュしてくれます。キャッシュの時間の変更は、フックを通して行います(過去に書いています)。 […]