2012年09月06日

記事内の画像を読み込む

ブログの表示がだんだんそれらしくなってきました。
今日はここにブログ内の画像をサムネイルで表示してみたいと思います。

ホームページお作りします

今回はshiromaru しろまるさんの
Google AJAX Feed APIでブログの概要と画像を表示
を参考にさせていただいています。

ここでは他にブログ概略で表示する文字数を変更する方法も紹介されてますね^^
ずっと見てると日毎にコードが増えていますw

yomikomi.js を開きます。

htmlstr += '<h3><a href="' + entry.link + '">' + entry.title + '</a></h3>';
という部分の後ろに以下のソースを追加します。

var imgCheck = entry.content.match(/(src="http:)[S]+((.jpg)|(.gif)|(.png))"/);
if(imgCheck){
htmlstr += '<img ' + imgCheck[0] + ' width=120>';
}

今回は画像の幅を120pxに指定しています。サイズはお好みで調整してください。
また探す画像の種類がオリジナルではJPEGのみになっていたのを
JPEG、GIF、PNGのどれかを探すように書き換えてあります。

上書き保存したらサーバーにアップしてみましょう。
これで画像が表示されるようになりました。

ホームページお作りします

ちなみにeしずおかブログのRSS2.0のデータには画像が入っていないようです。
RSS1.0のデータ(index.rdf)を指定してやると画像が出ます。

Amebaブログの方は最初は画像が出てたんですが、なぜかしばらく経つと消えました。
画像サイズは取得できるようなので、入っているのは確かなようなのですが・・・困ったもんです。

現在の yomikomi.js のソースはこのようになります。

google.load("feeds", "1");

function initialize() {
var feedurl = "ブログのRSSから広告除去したURL";
var feed = new google.feeds.Feed(feedurl);
feed.setNumEntries(5);
feed.load(function (result){

if (!result.error){
var container = document.getElementById("feed");
var htmlstr = "";

for (var i = 0; i < result.feed.entries.length; i++) {
var entry = result.feed.entries[i];

htmlstr += '<h3><a href="' + entry.link + '">' + entry.title + '</a></h3>';
var imgCheck = entry.content.match(/(src="http:)[S]+((.jpg)|(.gif)|(.png))"/);
if(imgCheck){
htmlstr += '<img ' + imgCheck[0] + ' width=120>';
}


htmlstr += '<p>' + entry.contentSnippet.substring(0, 150) + '</p>';
var strdate = createDateString(entry.publishedDate);
htmlstr += '<p>' + strdate + '</p>';
}

container.innerHTML = htmlstr;
}else{
alert(result.error.code + ":" + result.error.message);
}
});
}

function createDateString(publishedDate){
var pdate = new Date(publishedDate);
var pday = pdate.getDate();
var pmonth = pdate.getMonth()+1;
var pyear = pdate.getYear();
if(pyear < 2000){pyear = pyear+1900} ;
var strdate = pyear + "年" + pmonth + "月" + pday + "日";
return strdate;
}

google.setOnLoadCallback(initialize);


同じカテゴリー(ブログの読み込み)の記事画像
オマケ)本記事へリンクしやすくする改造
JavaScriptソース解説(自分用)
基本形完成
CSSで整形する(JavaScriptに組み込み)
CSSで整形する(準備段階)
西暦112年?!
同じカテゴリー(ブログの読み込み)の記事
 オマケ)本記事へリンクしやすくする改造 (2012-09-10 14:31)
 JavaScriptソース解説(自分用) (2012-09-09 15:42)
 基本形完成 (2012-09-09 15:03)
 CSSで整形する(JavaScriptに組み込み) (2012-09-08 14:04)
 CSSで整形する(準備段階) (2012-09-07 14:43)
 西暦112年?! (2012-09-05 14:42)

Posted by石上 昌子at14:51 ブログの読み込み