Skip to content

jcdcdev/jcdcdev.Umbraco.ReadingTime

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jcdcdev.Umbraco.ReadingTime

Umbraco Marketplace License NuGet Downloads Project Website

Custom Data Type for calculating reading time. With full variant support!

The following editors are currently supported:

  • Rich Text
  • Markdown
  • Block Grid
  • Block List
  • Nested Content
  • Textstring
  • Textarea

Quick Start

  1. Install the NuGet package in your Umbraco CMS website project.
     dotnet add package jcdcdev.Umbraco.ReadingTime
    
  2. Add the Reading Time data type to a document type. You can configure:
    • Words per minute (default is 200)
    • Min Unit (default is Minute)
    • Max Unit (default is Minute)
  3. Save and publish content.
  4. Reading Time will display in the backoffice

Using the value in your templates

In your template, you can accessing the Reading Time property value like any other property:

 @Model.ReadingTime.DisplayTime()

Configuration

You can change the average words per minute in the data type settings.

When creating a new data type, the default will be 200 words per minute.

Extending

The DisplayTime method will format the reading time as a string using Humanizer. This supports variants, meaning the reading time will be displayed based on the pluralisation rules of the current culture (e.g. "1 minute", "2 minutes", "0 minuter").

Min and max TimeUnit values are derived from the Data Type settings. The below example shows how you can ensure only seconds are displayed.

 Model.ReadingTime.DisplayTime(minUnit: TimeUnit.Second, maxUnit: TimeUnit.Second)

Contributing

Contributions to this package are most welcome! Please visit the Contributing page.

Acknowledgements (Thanks)

About

Custom Umbraco property editor for calculating reading time ⏲️

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •