最近、とある奇妙な「小」サイトを手作りしているときに気づいたのですが、Hugo ジェネレーター標準の ReadingTime メソッドが返す、指定ページの推定読了時間は CJK 言語ではあまり正確ではありません。そこで、Plain メソッドで指定ページのレンダリング済みコンテンツを取得し、すべての HTML タグを削除したうえで、strings.RuneCount 機能で指定文字列内の文字数を返し、それを 60 と 2 で割れば 1 分あたりの読了時間が算出できます。つまり 1 秒に 2 文字読む、というわけです。
{{ div (div (.Plain | htmlUnescape | strings.RuneCount) 2) 60 }} 评论
TwikooArtalk
