2011年07月21日

rss取得のphp書けた!

先日の複数のRSS取得してサイトに表示するJSに続き、今度はRSSをそれぞれ別の場所に表示する案件が発生。
とりあえず、Google AJAX Feed APIの改造に着手。でも、考えてみると別々の場所にそれぞれのRSSを表示するわけだから、
phpを複数設置した方が楽じゃん!

ということで、phpをせっせせっせと...
ここからは、私の完全な備忘録です。前回に引き続き、わかる人だけわかってください。

<?php
    //URL設定
    $rssdata = simplexml_load_file("http://***");
 
    // 件数設定
    $num_of_data = 3;
 
    //初期化
    $outdata = "";
    for ($i=0; $i<$num_of_data; $i++){
 
        $myEntry = $rssdata->channel->item[$i];
$rssDate = $myEntry->pubDate;
date_default_timezone_set('Asia/Tokyo');
$myDateGNU = strtotime($rssDate);
$myDate = date('Y/m/d',$myDateGNU);
        $myTitle = $myEntry->title; //タイトル取得
        $myLink = $myEntry->link; //リンクURL取得
 
        //出力内容(CSSOK)
        $outdata .=  '<p class=""><div style="float:left;width:80px;margin:0px 0px 0px 5px;font-size:12px">'.$myDate.'</div><a href="' . $myLink . '">' . $myTitle . '</a></p>';
 }
    echo $outdata; //全部出力する
?>
posted by ITF at 12:51| 奈良 ☁| Comment(0) | チュートリアル | このブログの読者になる | 更新情報をチェックする

2011年07月19日

複数のブログのRSSを取得しHPに表示する方法

複数のブログのRSSを取得してそのタイトル等を自分のホームページに表示する方法の備忘録。まず、いろいろなプログラムがネットには存在しているが、どうも広告なんかが入ったりしてスマートじゃない。
公式サイトなんかで広告が入ってしまうのもいかがなものかと...

調べること数時間。
Google AJAX Feed APIなるライブラリを発見。
これは、「Google AJAX Feed API」を使って外部RSSを読み込むという優れもの。
カスタマイズについては、いろいろな方がTIPSを提供してくれてます。

私が参考にさせていただいたのは、
http://neta-times.net/entries/953/

基本的な設置方法なんかは、上記サイトを参考にしていただければ、難なくできるはず。
CSS等のカスタマイズについても、基本的な知識があれば問題なくOKかと思います。

しかし、私の場合、出力される項目等もカスタマイズしなければならない状況になり、js(ジャバスクリプト)をいじることに ...

〓カスタマイズ項目は次のとおり〓

1) アメブロ等のRSSに必ず入るテキスト広告の非表示。
2) RSSから取得されるブログ名の置換。

まず、テキスト広告の非表示方法ですが...
出力されるコードのところに1行をプラス。

if (entry.title.match(/.*PR:.*/mi) == null) 

これで無条件にPRと書かれたタイトルは表示しなくなります。

次に、RSSから取得されるブログ名の置換です。(少々コレには手を焼きました、私の知識の無さを実感。。。)
だけど、試行錯誤の末、ついにクリアしました。

変数hogeBlogNameにentry.blogNameの値を代入して、replaceしたら、現在、表示指定でentry.blogNameになっている部分を、
hogeBlogNameに置き変えればOK。

つまり、

var hogeBlogName = entry.blogName;
hogeBlogName = hogeBlogName.replace(/私のブログ/, "つれずれ日記");
alert(hogeBlogName);

ということですね。

実際に、上記のプログラムで動いているサイト(私がカスタマイズしたもの)はこちらです。
http://www.ings-net.com/top.html

今後の、制作のテンプレートとしての備忘録的に。。。。




posted by ITF at 12:30| 奈良 ☔| Comment(0) | チュートリアル | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は90日以上新しい記事の投稿がないブログに表示されております。