アシアルブログ

アシアルの中の人が技術と想いのたけをつづるブログです

WordPressで外部RSS(twitter等)を表示させる

こんにちは、岡本です。

ブログにRSSリーダー機能を付けると、Twitter等の情報を表示させることができます。
レンタルのブログサービスには外部のRSS情報を表示する機能が標準で搭載されている場合もあるのですが、今回はWordPressで構築した自分のブログに外部のRSS(Twitter等)を表示させるようにしました。

WordPressで外部のRSSを表示させる方法
1.RSS表示ウィジェットプラグインで導入する
2.テンプレートに直接PHPを記述してRSSを表示する
3.ウィジェットPHPを実行させるプラグインを導入し、
直接PHPを記述してRSSを表示する

一番面倒そうですが、自分の使いたいプラグインが見つからなかったので最終的に3の方法で表示させることにしました。
WordPressにはRSSを取得・表示・キャッシュする「MagpieRSS」というライブラリが利用されているので、MagpieRSSをPHPで呼び出せば簡単にRSSの内容をブログに表示させることができます。また、ウィジェットPHPを実行させるプラグインを導入すれば更に自由度が高まります。

PHP Code Widgetの導入
WordPressプラグインサイトからPHP Code Widgetをダウンロードし、pluginディレクトリに展開します。
WordPressの管理画面からプラグインを有効化し、ウィジェットメニューでサイドバーに追加します。


RSS表示プログラムを記述する
まず、PHPが動くか確認してみましょう


<?php
echo 'hellow world';
?>



次に、RSSを表示するプログラムを書きます。




<?php 
include_once(ABSPATH . WPINC . '/rss.php'); 
$rss_url = "http://blog.asial.co.jp/rss/rss2.0.php";
$limit = 10;
$rss = fetch_rss($rss_url);
$items = array_slice($rss->items, 0, $limit); 
?> 
<ul> 
<?php 
if (empty($items)) :
?> <li>記事がありません</li>
<?php
else : 
foreach ( $items as $item ) : ?> 
<li><a href='<?php echo $item['link']; ?>'>
<?php echo $item['title']; ?> 
</a></li> 
<?php endforeach; ?> 
<?php endif; ?>
</ul>
?>



結果は以下のようになりました


プログラムを改造すれば、自由に表示方法や件数を変えることができます。
レンタルのブログシステムでは味わえない自由度を享受できます。
PHPの書き方が良くわらん!」
という方は弊社PHPプロをご参考ください。

暫く、WordPressのカスタマイズで遊ぶつもりです。
次はPodCastを導入するか動画サイトとの連携を試してみようと思います。