web: GitHub Pagesの管理(2025/7月)
はじめに
月初なのでこのページの管理をする。
Google Search Console
登録済みの件数は 0件のままだ。

最近、記事にタグ付けをしたので再度検査してもらったのだが、それでこれだ。
内訳も前とあまり変わらず「クロール済み - インデックス未登録」がほとんどだ。
画像(スクリーンショット)の数が数枚あってもエラー扱いになってるから、
何も画像がないページは登録されない、という話ではないのだろう。
そのページに飛ぶリンクも作っているし、もう「ページの品質が低い」くらいしかなさそう。
何も思いつかないし、またしばらくはこのままでいいか。
タグ付けした
jekyll の Liquid であれこれやって、ようやくタグ付けできた。
記事にタグを付けたら自動で全体のタグとして扱われるのではなく、
まず全体のタグを設定して、それを記事のタグとして使うようにするのだ。
まあ、適当なタグを付けて似たようなタグが増えていくよりはよいか。
その他、直近の記事、とか、2024年の記事、みたいなページを自動で作ることができるようになった。
その代わりに月ごとにまとめていたのがなくなったが、そういう読み方をすることはないからよかろう。
Liquidのwhere
GitHub Pages で使われている Liquid のバージョンは 4.0.4 である(2025/07/06)。
whereが使えるようになったのは 4.0.2 からだと思われる。
なのでwhereは使える。
{% assign tag_pages = site.pages | where: "draft", true %}
(liquid のコードを書くと変換されてしまうので全角の {} を使っている)
whereは truthy な書き方だけになっている。
↑の書き方だと true はわざわざ書かなくてもよさそうなのだが、
省くと GitHub Actions でエラーになっているので書いている。
やりたいのは、下書きのページは載せないようにすること。
なので、そういうページには front matter のところに "draft": true と書こうとしている。
載せるのはdraftが未定義なページだけにしたい(既存のページに"draft": falseを書きたくないので)。
Liquid 4.0 から nilが使える と書いてあるのでやっているのだが、どうにも作動しない。
全リストをforで出すのだったらunlessとか使って除外させても良いのだが、
最近の記事をいくつかというリストをfor...limitで出力しているとよろしくない。
まあ、dateを未指定にしておけば結果としては除外されるのだけど、なんかこう納得できない。
not defined と empty value は違うだろうからemptyじゃなくてnilだと思うんだけどなあ。
where_expを使ったとしてもnilでよいのかよくわからんし、トライアンドエラーで試したいほどのことでもないのだ。
公開しないなら別ブランチにすればいいやん、と思うだろうけど、あんまりそこまでする気力がないのよねぇ。
そういう気力のなさが Google Search Console に品質が低いと思われるのかもしれん。
_config.ymlにデフォルト値として"daily": trueを追加し、日記じゃない場合は front matterに"daily": falseを書くことで回避することにした。