2013年9月11日水曜日

[Blogger][質問]Bloggerで作ったページでJavaScriptを使い、指定したURL先のページタイトルを取得したい

※このページは私からの質問です。

Blogger で作ったブログでコメント一覧を表示するページを作っています。

JavaScriptを使ってスクリプトを組もうとしています。
コメントフィードを使ってコメントデータが取得できて、JSAPIを使うことで 個々のエントリのコメントのタイトル(title) / コメントへのリンク(link) / コメントした日付(publishedDate) 等のデータが取れるのまでは処理できています。

だけどコメントをしたページのURLまではJavaScript上で取れるのですが、そのURL先のページタイトルを取得するところがどうしてもうまくいかなくて困っています。

URL先のページタイトルを取得するだけだとネット上にサンプルもあるのですが、どうしても組み合わせることができないでいます。

どなたかやり方を教えていただけないでしょうか。。。

今このようにコメントの一覧表示ページを作っています。


コメントフィードの個々のエントリから、
・コメントのタイトル: entry.title  ・・・ 太字の所
・コメントした人: entry.author ・・・ かっこ()でくくられた所
・コメントした日時: entry.publishedDate ・・・ 2行目の所
・コメント本文の抜粋: entry.contentSnippet ・・・ 3行目の所
を取ってきて表示しています。

だけど、コメントのタイトル(太字の所)をそのリンク先ページのページタイトルを表示したいのです。

スクリプト(ネットのサンプルのつぎはぎです。。。) <script src="http://www.google.com/jsapi/" type="text/javascript"></script>
<script type="text/javascript">
google.load("feeds","1");
google.setOnLoadCallback(function(){
 getFeed();
}); //google.setOnLoadCallback
function getFeed(){
   var feed = new google.feeds.Feed("http://marumarutonton.blogspot.jp/feeds/comments/full?max-results=100");
   feed.setNumEntries(100);
   feed.load(callback);
 }
  function callback(result){
   if (result.error){
     alert(reault.error.message);
   }
   var res = "";
   var len = result.feed.entries.length;
   for (var i = 0;i < len;i++){
     var entry = result.feed.entries[i];
     var title = entry.title;
     var link = entry.link;  → ここで URL は取得できる。
     var author = entry.author;
     var publisheddate = entry.publishedDate;

     var date = new Date (publisheddate);
     var year = date.getFullYear();
     var month = date.getMonth() + 1;
     var day = date.getDate();
     var hour = date.getHours();
     var min = ('0' + date.getMinutes() ).slice( -2 );
     var datestring = year + "/" + month + "/" + day + " " + hour + ":" + min;
     var content = entry.contentSnippet;
     res += "<p><a href=\"" + link + "\"><b>" + title + "</b> (" + author + ") </a><br /> - " + datestring + "<br />" + content + "</p><hr />";
  → title の代わりに link 先ページのページタイトルを表示したい。
   }
   var panel = document.getElementById("feed");
   panel.innerHTML = res;
 }
</script>
<br />
過去のコメントのリンク一覧です。<br />
あまり見やすいものではないですが、見過ごしたコメントを見つけれるようにと作りました。<br />
最新のコメントが一番上に表示されるようになっています。<br />
コメントの一覧を取得するのにフィードというものを使っているのですが、最新のコメントが反映されるのに時間がかかることもあるようです。<br />
<br />
<hr />
<div id="feed">
</div>


まるとん


Blogger Tips のページに戻る

0 件のコメント:

コメントを投稿