取得できる情報は今のところ以下の通り。
タイトル
リンクのアドレス
作成日
更新日
ラベル
以下のコードをBloggerのHTML編集モードで貼りつける。
貼りつけた後、編集すると不具合が発生する場合があるので、編集する場合は別のエディタで編集してから貼りつけて、そのまま公開ボタンをクリックする。
以下の例では、ラベルに"javascript"がついた投稿を作成日順にソートして表示する。
コード
<!-- これを全部コピーして貼り付けること。bloggerのhtmlエディタで編集するとエラーが出る --> <div style='margin:0.5rem;'> <a href="https://s104bntmp.blogspot.com/2015/10/javascript-javascript.html">javascript とは</a> </div> <div style='margin:0.5rem;'> <a href="https://s104bntmp.blogspot.com/2020/04/javascript-jquery.html">基本形(jQueryを用いたスクリプトの基本形)</a> </div> <div style='margin:0.5rem;'> <a href="https://s104bntmp.blogspot.com/2013/10/javascripttips.html">TIPS</a> </div> <div style='margin:0.5rem;'> <a href="http://s104bntmp.blogspot.jp/2013/10/jquerytips.html">jQuery:TIPS</a> </div> <script type="text/javascript"> function loadtoc(data) { let entry = []; for (i = 0; i < data.feed.entry.length; i++) { // ラベルの探索 let label = []; if (data.feed.entry[i].category) { for (let j=0; j<data.feed.entry[i].category.length; j++) { label.push(data.feed.entry[i].category[j].term); } } // リンク先の探索 let href; for (j = 0; j < data.feed.entry[i].link.length; j++) { if (data.feed.entry[i].link[j].title == data.feed.entry[i].title.$t) { href = data.feed.entry[i].link[j].href } } entry[i] = { title: data.feed.entry[i].title.$t + " (" + data.feed.entry[i].published.$t.slice( 0, 10 ) + " 作成)", href: href, label: label, published: data.feed.entry[i].published.$t, updated: data.feed.entry[i].updated.$t, summary: data.feed.entry[i].summary.$t }; } // 並べ替え(作成順) entry.sort(function(a,b) { return (a.published < b.published ? 1 : -1); }); for (i = 0; i < data.feed.entry.length; i++) { if ( entry[i].label.includes("javascript") ) { document.writeln("<div style='margin:0.5rem;'><a href=\"" + entry[i].href + "\">" + escapeHTML(entry[i].title) + "</a><br /></div>"); } } // テキストをエスケープ処理する function escapeHTML(html) { var div = document.createElement("div"); if (div.innerText !== void 0) div.innerText = html; // innerText が定義されていれば innerText へ設定 else div.textContent = html; // Firefox のように innerText がないブラウザ向け return div.innerHTML; } } </script> <script type="text/javascript" src="https://s104bntmp.blogspot.com/feeds/posts/summary?alt=json-in-script&callback=loadtoc&max-results=500&redirect=false"></script>
以下の部分で投稿情報を取得して、loadtocにコールバックしている。
"s104bntmp.blogspot.com"を自分のブログに変更してください。
scriptタグの前のdivタグは関係ない(このようにhtmlと組み合わせることも可能)。
<script type="text/javascript" src="https://s104bntmp.blogspot.com/feeds/posts/summary?alt=json-in-script&callback=loadtoc&max-results=500&redirect=false"></script>
参考:
Blogger:投稿一覧を作成する-最もシンプル
Blogger の フィード URL 構成 と パラメタ― まとめ
以上