0.2.0 • Published 2 years ago

eleventy-plugin-shortlinks v0.2.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

eleventy-plugin-shortlinks

Description

A plugin for Eleventy to generate shortlinks for all items in a collection. The shortlinks can then be paired with a short domain and be used to share shorter permalinks to content in your site.

The shortlinks are generated similar to Whistle which takes the date of the item in the collection and converts it to NewBase60. The shortlink is traditionally expected to be of the format tSSSn where:

  • t: prefix
  • SSS: item date in NewBase60
  • n: number of post in the same SSS

Installation

npm install eleventy-plugin-shortlinks

Usage

const shortlinks = require('eleventy-plugin-shortlinks')

module.exports = eleventyConfig => {
	eleventyConfig.addPlugin(shortlinks, {
		startIndex: 0,
		prefix: 'i'
	})
  ...
}

The above will generate the shortlinks for all the items in the collections. In order to use it, create another template file (e.g. links.njk):

---
pagination:
  data: collections.all
  size: 1
  alias: item
permalink: "{{ item.url | shortlink }}/"
eleventyExcludeFromCollections: true
---
{% page_redirect item.url %}

Options

OptionDescriptionDefault
startIndexIndex to start entries for a given day0
prefixPrefix for all shortlinks (see: design)empty string

Credits