[k]id » RSS 

2009年12月16日

PHP5 SimpleXMLでRSSフィードを取得する

さて、PHP5になってとっても便利になったSimpleXMLを使ってみようと思います。

XMLということでRSSを取得するスクリプトを覚え書き
ポイントはRSSで使用されているdc:dateをNamespaces(名前空間)で
取得しなければならない

↓のdc:dateの部分
<dc:date>2009-03-02T15:00:00 +0900</dc:date>
ので下記を参考にさせていただきました。
Stuart Herbert’s PHP Blog


限りなく簡単に書いたコードは以下
$feed = simplexml_load_file("RSSへのパス");

foreach ($feed->item as $item) {
    //タイトルを表示
    echo $item->title;
    //リンクを表示
    echo $item->link;
    //時刻
    $dc = $item->children('http://purl.org/dc/elements/1.1/');
    echo $dc->date;
    //本文
    echo $item->description;
}

これだと[CDATA]が扱えないので
改良版はのちほど。。

続き→SimpleXMLでCDATAを扱う

Filed under: PHP
タグ: ,

2009年9月25日

Google リーダーにNewsGatorのOPML(XML)ファイルをインポートする。

普段iPhoneの「NetNewsWire iPhone版」でRSS購読をしているのですが、
購読の管理元のNewsGator Onlineのサービスが停止するという事で
NewsGator OnlineからGoogleリーダーにフィードデータを引き継ぐ事にしました。

以下に手順を紹介します。


NewsGator OnlineからOPMLをエクスポート

1、NewsGatorにログイン後メニューバーのSettingをクリック
ピクチャ 2

2、タブのEdit Locationsをクリック
ピクチャ 3

3、NewsGator Web Edition欄のOPML (public)をクリック
ピクチャ 4

4、Expose OPML to all users (clearing this option will make the OPML accessible only to you)にチェックを入れて[save changes]ボタンを押す
ピクチャ 5

5、再度NewsGator Web Edition欄のOPML (public)をクリック
ピクチャ 4

6、OPML URL: http://services.newsgator.com/ngws/svc/opml.aspx?uid=xxxxxxxxxxxのリンク先のファイルをローカルに保存
ピクチャ 7


Google リーダーにOPML(XML)ファイルをインポート

1、Googleリーダーにアクセス
ピクチャ 8

左下の登録フィードの管理 »をクリック
ピクチャ 9

2、インポート/エクスポートのタブをクリック
ピクチャ 10

3、OPML ファイルを選択で先程のファイルを選択し、アップロード
ピクチャ 11

4、で、完了!!


これで安心です。
フィードが全部無くなるかと思った(笑)

Filed under: WEB Tips
タグ:

2008年9月5日

外部サイトのRSSを自分のサイトに読み込む覚え書き

以下をphpで保存。

header("Content-type: application/xml");
$url = "http://kidokorock.com/feed/atom";
readfile($url);

上記ファイルをサーバーにアップし、
リンクを張る事で読み込み可能。

Filed under: Ajax
タグ: , ,

2008年5月31日

WordPressで特定のカテゴリごとにフィードをリンクしたい場合。

WordPressでカテゴリごとにRSSを配信したい場合
静的にリンクを張りたい場合
設定>パーマリンクの設定>で
カスタム構造を選択し

/%category%/%postname%.html
と設定した場合

カテゴリ名/feed
でそのカテゴリのフィードが配信出来る。
例:http://kidokorock.com/wordpress-tips/feed
 

ついでに
下記でフィードをカテゴリリスト表示(テキストリンク)
<ul>
<php wp_list_cats('sort_column=name&optioncount=1&exclude=1&afeed=RSS'); ?>
</ul>
下記でフィードをカテゴリリスト表示(画像リンク)
<ul>
<?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=1&exclude=1&feed_image=URL.jpg"); ?>
</ul>