HUGO
Menu
GitHub 87548 stars Mastodon

ReadingTime

返回给定页面的估计阅读时间(以分钟为单位)。

Syntax

PAGE.ReadingTime

Returns

int

估计阅读时间是通过将内容中的字数除以阅读速度来计算的。

默认情况下,Hugo 假设阅读速度为每分钟 212 个单词。对于 CJK 语言,它假设为每分钟 500 个单词。

{{ printf "Estimated reading time: %d minutes" .ReadingTime }}

阅读速度因语言而异。在多语站点上使用站点参数创建特定于语言的估计阅读时间。

languages:
  de:
    contentDir: content/de
    languageCode: de-DE
    languageName: Deutsch
    params:
      reading_speed: 179
    weight: 2
  en:
    contentDir: content/en
    languageCode: en-US
    languageName: English
    params:
      reading_speed: 228
    weight: 1
[languages]
  [languages.de]
    contentDir = 'content/de'
    languageCode = 'de-DE'
    languageName = 'Deutsch'
    weight = 2
    [languages.de.params]
      reading_speed = 179
  [languages.en]
    contentDir = 'content/en'
    languageCode = 'en-US'
    languageName = 'English'
    weight = 1
    [languages.en.params]
      reading_speed = 228
{
   "languages": {
      "de": {
         "contentDir": "content/de",
         "languageCode": "de-DE",
         "languageName": "Deutsch",
         "params": {
            "reading_speed": 179
         },
         "weight": 2
      },
      "en": {
         "contentDir": "content/en",
         "languageCode": "en-US",
         "languageName": "English",
         "params": {
            "reading_speed": 228
         },
         "weight": 1
      }
   }
}

然后在模板中:

{{ $readingTime := div (float .WordCount) .Site.Params.reading_speed }}
{{ $readingTime = math.Ceil $readingTime }}

我们将 .WordCount 转换为浮点数,以便在除以阅读速度时获得浮点数。然后向上舍入到最接近的整数。


Last updated: January 1, 0001
Improve this page