Google AJAX Feed APIで外部のRSSを読み込み一覧を表示するJavascriptを改造

前回のページ「」で紹介したスクリプトを一部変更してみた。

 

変更の主な内容は、

表示するリストを作成する際に、HTMLタグを変数に入れるように改造しました。(赤文字部分)

前回はXMLの要素を操作してリストを作成するようにしていましたが、

XMLの操作は苦手なのでHTMLのソースを変数に格納するようにしました。

google.load(“feeds”, “1”);  

function initialize()

{  

 //RSSフィードの取得

 var feed = new google.feeds.Feed("●●読み込みたいフィードのURL●●");  

 

 //取得するフィード数

 feed.setNumEntries(5)  

 

 //実際に読む込む

 feed.load(function(result)

 {  

  

  //読み込めたか判別

  if (!result.error)

  {

   //表示部分を選択

   var container = document.getElementById(“feed”);

   

   //変数の初期化

   var list = “”;

   

   //Feedの処理

    list = ‘’;

   for (var i = 0; i list += ‘- ‘;

     list += ‘’ + entry.title + ‘’;

     var strdate = createDateString(entry.publishedDate);

     list += ‘(’ + strdate + ‘)’;

     list += ‘’;**

    }

        }

     **list += ' ‘;

     container.innerHTML = list;**

     }  

   });  

}

//日付の表示方法を変更

function createDateString(publishedDate){

  var pdate = new Date(publishedDate);

  var pday = pdate.getDate();

  var pmonth = pdate.getMonth() + 1;

  var pyear = pdate.getFullYear();

  var phour = pdate.getHours();

  var pminute = pdate.getMinutes();

  var psecond = pdate.getSeconds(); 

  //var strdate = pyear + “年” + pmonth + “月” + pday + “日” + phour + “時” + pminute + “分” + psecond + “秒”;

  var strdate = pyear + “-” + pmonth + “-” + pday ;

  return strdate;

}

google.setOnLoadCallback(initialize); 

   

↓↓実際にうちの社長のアメブロのフィードを読み込んで表示した例↓↓

google.load(“feeds”, “1”);
function initialize() {
//RSSフィードの取得 var feed = new google.feeds.Feed(“http://feedblog.ameba.jp/rss/ameblo/5603blog/rss20.xml");

//取得するフィード数 feed.setNumEntries(5)

//実際に読む込む feed.load(function(result) {

//読み込めたか判別 if (!result.error) { //表示部分を選択 var container = document.getElementById(“feed”);

//変数の初期化 var list = “”;

//Feedの処理 list = ‘’; for (var i = 0; i

 

前回同様に

RSSに「PR:」が含まれていなければ新着5件を表示しますが、

新着5件中1件に「PR:」が含まれていた場合は

フィード自体から削除して消すのではなく、省略というか、スキップしているだけなので

表示が4件になります。

この辺りは改善が必要ですが、また今度にします。

 

参考にしたサイト

 

2009/09/23追記

上記を更に改造↓

Hugo で構築されています。
テーマ Stack は Jimmy によって設計されています。