同じドメインでの最新投稿記事を別のページなどに埋め込むのは
WordPressのテンプレートタグを呼び出して
ってやり方でできた。
今回はドメインが異なる、違うサイトからRSSを利用して
最新投稿をページなどに読み込んでみる。
使うサイトは
AfroNamiheiの箱(このブログのRSS)の投稿を
@pagesにあるWordPress
で読み込む。
RSS読み込み側の準備
@pagesのブログでページやエントリーでPHPコードを動かすプラグインrunPHPを使います。
no sq – runPHP Plugin for WordPress
runPHPのダウンロード
上記サイトからrunPHPをダウンロードし
/wp-content/pluginsディレクトリにアップロード後、プラグインを有効にする。
WordPress管理画面の設定、投稿設定で
チェックを外す
「不正にネスト化した XHTML を自動的に修正する」の
チェックを外した設定にする。
WordPress管理画面の設定にrunPHPが出来ているので
Administrator権限の使用に設定
「Administrator|User role」のチェックをつけて保存。
RSSを読み込むPHPスクリプト
PHPでRSSを収得するためのスクリプト、MagpieRSSをダウンロードします。
DOWNLOAD、Magpie 0.6a (alpha)、MagpieRSS 0.52の赤丸3つどれでもOK
ちなみにAfroはalphaバージョンをダウンロード
上記サイトからダウンロード。
拡張子がLinux用の.tar.gzでファイルが落ちてきますが
zip形式で解凍可能です。
解凍後
FTPソフトでrootディレクトリに
ファイル
- rss_cache.inc
- rss_fetch.inc
- rss_parse.inc
- rss_utils.inc
フォルダー
- extlib
をアップロードし
同じくrootディレクトリにcacheディレクトリを作り
cacheディレクトリのパーミッションを757にします。
@pages側、RSS読み込み側ブログの投稿に最新投稿を埋め込む
ページでも投稿でもやることは同じですが
<?php
error_reporting(E_ERROR);
require_once 'rss_fetch.inc';
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
$url = 'http://www.afrojapan.com/blog/feed';
$rss = fetch_rss($url);
$title = $rss->channel['title'];
echo "<h3>$title</h3>\n";
echo "<dl>\n";
foreach ($rss->items as $item ) {
$title = htmlspecialchars($item['title']);
$description = htmlspecialchars($item['description']);
$url = htmlspecialchars($item['link']);
echo "<dt><a href=\"$url\">$title</a></dt>\n";
echo "<dd>$description</dd>\n";
}
echo "</dl>\n";
?>
(赤文字のURLは読み込みたいブログのRSS)
と、記事を書いた後
投稿編集画面の下の方にある
PHPコードを使用のチェック
「run PHP code?」にチェックを入れて保存、あるいは公開。
引用、参考サイトは以下です
PHPでブログの最新記事をRSSで取得しホームページに貼り付ける。 – けむしろうの部屋別館 – 楽天ブログ(Blog)
外部の RSS を PHP で取得 – lucky bag
WordPressの投稿記事やページ内でPHP構文を使う。(プラグイン:runPHP)::streetcar weblog 第二世紀









