アクセス数: | 今日: | 昨日:   記事数:996

HOMESITE MAPBOOKMARKTAG CLOUD

【WordPress】外部RSSを取得して表示する方法

『【WordPress】外部RSSを取得して表示する方法』をはてなブックマーク

WordPress & RSSWordPressで他サイトのRSSを取得して表示する方法はプラグインの『FeedList』を使えば簡単に出来ますが、複数設置出来ないのが難点。

以前の詳細記事は以下

米が好き
【WordPress】Tumblrを表示させる方法
【WordPress】FeedListを複数設置する方法
【WordPress】ニコニコ動画をRSSで表示させる方法
【WordPress】FeedListのバージョンアップ、ちょっと待った!

『feedlist.php』に手を加えればいけない事もないんですが、バージョンアップの度に直さなくてはいけないのは面倒です。
なので、WordPressのテーマ内PHPに直接書く事にしました。
利用させてもらったのは、以下のサイトからです。

WebTecNote
[WP]wordpressでRSSを取得して表示

WordPressは管理画面などでRSS取得表示してるので、それを上手くテーマにも利用すれば良いんですね。
まず全てのファイルに適用出来るように、ヘッダーに以下のコードを追加。

header.php
<?php
include_once(ABSPATH . WPINC . '/rss.php');
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
define('MAGPIE_CACHE_DIR', './cache');
define('MAGPIE_FETCH_TIME_OUT', 30);
define('MAGPIE_CACHE_AGE', 60*60);
?>
<!DOCTYPE ~~~
<html ~~~

簡単な下準備が整った所で、表示させたい箇所に以下のコードを追加します。
(tumblrを読み込んだ例)

sidebar.phpなど
<?php
  $rss = fetch_rss('http://ほげほげ.tumblr.com/rss');
  $maxitems = 1;
  $items = array_slice($rss->items, 0, $maxitems);

  if (empty($items)) echo 'No items';
  else
    foreach ( $items as $item ) :
?>
  <a href="<?php echo $item['link']; ?>" title="<?php echo $item['title']; ?>" target="_blank"><?php echo $item['description']; ?></a>
<?php endforeach; ?>

基本的に以下の項目だけを編集します。
$rss = 読み込むRSSのアドレス
$maxitems = 読み込む数(上記では最新の1つだけ取得)

No items』は読み込むデータがない場合に表示されます。
『表示させる記事がありません』とか『何もありまへん』とか日本語でもOK。
<a>~~~</a>』は実際に表示させたい項目のコードを書きます。

$item['link'] = リンクアドレスが取得されます。
$item['title'] = タイトル(キャプション等)が取得されます。
$item['description'] = 全てが取得されます。(tumblrの場合、画像とキャプション)

上記の取得される項目と表示された時のソースとCSSを上手く使って、好みにデザインします。
私的には画像のアドレスだけ取得したい所なんですが。

これを基本に使えば、ニコニコ動画のマイリストを取得したり(以前の記事)出来ます。
『twitter』は表示されない時が多々あるので、『Twitter Tools』(解説サイト)と言うプラグインを使用しています。
『YouTube』は少々手を加えなきゃいけません。(後日書きます)

Trackback URL

リンク先が18禁サイトの場合は削除しています。
当ブログにリンクが貼られていない場合は削除しています。
Tag : ,

トラックバック (1)

  1. RSS を利用して We heart it! の画像を表示させる | Nutspress
    [...] 例によってプラグイン関連を探してみたのですが見つからず、、、で、RSSを吐き出しているものであれば、そのRSSを取得して表示させることができるのでは?と『wordpressでRSSを取得して表示』と『外部RSSを取得して表示する方法』を参考にしながらPHPコードを書いてみました。 [...]

コメントを書く

必須です。

必須です。(公開されません)
GRAVATARに登録していると、アイコンが表示されます。

リンク先が18禁サイトの場合は削除しています。

以下のタグが利用出来ます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Additional comments powered by BackType