apiに頼ってもサービス終わったらどうしようもないので自己完結できる形をどうにかせにゃいかん。
環境
サーバー:ロリポップ
参考
【アメブロ対応】phpで外部ブログRSSを自サイトに組み込む
magpierssの準備
MagpieRSS – Browse /magpierss at SourceForge.net
とりあえず最新版をDLする。
解凍してフォルダ名を「magpierss」にリネームして任意のディレクトリに突っ込む。
.htaccessの準備
htmlファイルでphpが動くようにする。
ロリポップの管理画面で突っ込みたいドメインのphpバージョンを調べる。
AddHandler php5.6-script .htm .html
「5.6」のとこを該当の数字に変える。
他のサーバーだと違う書式だったりするらしい?のでそれでアレする。
rss出力
アメブロのを出したいからこう。
<?php
require_once("magpierss/rss_fetch.inc");
define("MAGPIE_CACHE_AGE", 60*30);
define("MAGPIE_CACHE_DIR", "/path/2/cache/");
define("MAGPIE_OUTPUT_ENCODING","UTF-8");
$url = "http://rssblog.ameba.jp/****/rss20.xml";
$rss = fetch_rss( $url );
$max_lines = 5;
$line = 0;
foreach ($rss->items as $item) {
$link = mb_convert_encoding($item['link'],"UTF-8","auto");
$title = mb_convert_encoding($item['title'],"UTF-8","auto");
$description = mb_convert_encoding($item['description'],"UTF-8","auto");
$date = date("Y/m/d", intval($item['date_timestamp']));
if (preg_match("/^PR:.+$/", $title) != 0) continue;
if ($line++ == $max_lines) break;
echo '<a href="'.$link.'">'.$title.'</a>'.$description;
echo '<li>'.$date.'<a href="'.$link.'" target="_blank" rel="noopener noreferrer">'.$title.'</a></li>';
}
?>
詳細はこちら。
「magpierss/rss_fetch.inc」を放り込んだディレクトリに合わせてアレする。
「http://rssblog.ameba.jp/****/rss20.xml」を任意のそれにする。
まとめ
合ってれば動く。
コメント