変更箇所
その1
var postUrl = json.feed.entry[i].link[j].href;
にて、URLを取得しているのですが、こちらをreplace()メソッドを使って下記のコードを上記コードのすぐ下に追加してルート相対パスの形をとりました。
postUrl = postUrl.replrace("http:\/\/サブドメイン.blogspot.com\/","\/");
postUrl = postUrl.replrace("https:\/\/サブドメイン.blogspot.com\/","\/");
replace()メソッド
replrace("置き換えたい文字列","置き換えた文字列");
のように設定すると、該当する最初の文字列のみ置き換えます。
今回は、これをうまく使って、httpの時と、httpsの時の両方を条件分岐なしで設定しました。
該当するすべての文字列を置き換える場合は、
replrace(/置き換えたい文字列/g,"置き換えた文字列");
のようにします。
その2
<script src="http://holidaybuggy.blogspot.com//feeds/posts/summary?orderby=published&max-results=(表示させたい件数)&alt=json-in-script&callback=mycallback"></script>
をルート相対パスにし、下記のようにしました。
<script src="/feeds/posts/summary?orderby=published&max-results=(表示させたい件数)&alt=json-in-script&callback=mycallback"></script>
参考までに、変更したコードを下記に載せておきます。
<script type="text/javascript">
function mycallback(json) {
for (var i = 0; i < json.feed.entry.length; i++) {
for (var j = 0; j < json.feed.entry[i].link.length; j++) {
if (json.feed.entry[i].link[j].rel == 'alternate') {
var postUrl = json.feed.entry[i].link[j].href;
postUrl = postUrl.replrace("http:\/\/サブドメイン.blogspot.com\/","\/");
postUrl = postUrl.replrace("https:\/\/サブドメイン.blogspot.com\/","\/");
break;
}
}
var postTitle = json.feed.entry[i].title.$t;
var postDate = json.feed.entry[i].published.$t;
var postDate_y = postDate.substring(0,4);
var postDate_m = postDate.substring(5,7);
var postDate_d = postDate.substring(8,10);
var postDate_ymd = postDate_y + "/" + postDate_m + "/" + postDate_d + " ";
var item = '<a href=' + postUrl + '>' + postdate_ymd + postTitle + '</a><br /><br />';
document.write(item);
}
}
</script>
<script src="/feeds/posts/summary?orderby=published&max-results=(表示させたい件数)&alt=json-in-script&callback=mycallback"></script>
以上、参考にしていただけたら幸いです。
0 件のコメント:
コメントを投稿