2023年に行ったBlogger(QooQ)のカスタマイズです。
関連記事を生成して表示する
関連記事を生成・出力表示するプログラム。
先行事例と比べてとくに新しい手法や機能はありませんが、自分なりに理解できる形、構成にしてみました。
Bloggerが挿入する標準JS(widgets.jsなど)をイベント後に生成
クリックやタップをトリガーにして標準JS(widgets.jsなど)読み込むプログラムです。
b:js='true'
のときに標準JSの読み込みを遅らせたかったので作成しました。
ランダムポストウィジェットを作成
Blogger用のランダムポストウィジェットを作成しました。
データは関連記事を生成したときと同様にフィードから取得しました。
do while
文を使いました。
クリックでコメントフォームを読み込む
コメントが「埋め込み」の場合のコメントフォームを読み込む時の転送量、約500kBを節約するために作成しました。
既存のコードを流用しているので面倒なことになっています。
覚え書きです。
【Blogger】ボタンクリックでコメントフォームを読み込むプログラム作成の覚え書き-すたすた式
ラベルをカテゴリーと#タグ(ハッシュタグ)に分けて表示する
独自タグだけで作成するのがスマートですが、ラベルがC#
など、#
が先頭にない場合も拾ってしまいます。
そこでラベルの先頭に#
があるものだけを振り分けるために作成しました。
ラベルウィジェットの既存のコードにJavaScriptを追加した簡便なものです。
その他
記事にはしていませんが、以下を行いました。
コピーライトの更新年を自動更新する
コピーライトの更新年を自動更新するコードです。
コピーライトの更新年、さらにはコピーライトそのものも不要のようですが、興味があったので追加してみました。
参考サイト:コピーライト表記に年号は必要? ©の意味と書き方とは ― コラム ー ベイクロスマーケティング株式会社
JavaScriptが無効の状態でも発行年だけは表示されるようにしました。
<span class="copyright-year">© 2015</span>
<script>
//<![CDATA[
(function autoUpdateYear() {
// 現在の年を取得
const thisYear = new Date().getFullYear();
// 現在の年を挿入したHTMLを作成
const yearUpdated = `<span class="copyright-year-updated"> - ${thisYear}</span>`;
// HTMLを出力
document.currentScript.insertAdjacentHTML("beforebegin", yearUpdated);
})();
//]]>
</script>
新年のあいさつを毎年表示する
サイドバーの「お知らせ」(HTML/JavaScriptウィジェット)に毎年1月1日から1月7日まで新年のあいさつを表示するコードです。
<div id="sidebarInfo" class="sidebar__info">
<ul class="sidebar__info--info-mark">
<script>
//<![CDATA[
(function showGreeting() {
// 現在の日付を取得する
const today = new Date();
// 1月1日から1月7日までの期間かどうかを判定する
// 特定の年のみの場合はコメントアウトを取る
const isNewYear =
// today.getFullYear() === 2024 &&
today.getMonth() === 0 && today.getDate() >= 1 && today.getDate() <= 7;
// 期間内であれば あけましておめでとうございます を表示する
if (isNewYear) {
const greeting = `<li class="greeting">🎍🎌新年あけまして<br>おめでとうございます<br>本年もよろしくお願いいたします</li>`;
document.currentScript.insertAdjacentHTML("beforebegin", greeting);
}
})();
//]]>
</script>
</ul>
</div>
コメントなし:
コメントを投稿