Format article/post dates based on YAML Front Matter (YFM) data and moment
npm install --save-dev metalsmith-date-formatter
Front Matter:
---
publishDate: 2015-05-30
modifedDate: 2015-05-31
---
JavaScript API:
var Metalsmith = require('metalsmith');
var dateFormatter = require('metalsmith-date-formatter');
Metalsmith()
.use(dateFormatter());
In your template::
<p>published: {{ publishDate }}</p>
<p>last modified: {{ modifiedDate }}</p>
This option takes multiple formats
array of objects with key
and format
properties.
- The
key
property is the YFM property name - The
format
property is optional but takes any moment format value
.use(dateFormatter({
dates: [
{
key: 'publishDate',
format: 'MM DD YYYY'
},
{
key: 'modifiedDate',
format: 'MM YYYY'
}
]
})
array of strings
.use(dateFormatter({
dates: ['publishDate', 'modifiedDate']
})
string
.use(dateFormatter({
dates: 'publishDate'
})
Any date format that moment
accepts, defaults to MMMM DD, YYYY
The metalsmith cli workflow has not been tested