Blog post artifacts.

Description

We need a way to generate blog posts in a semantic directory structure based upon a "database" of blog post source files. (See how Jekyll handles blog posts for example.)

The original thinking was to store block posts in the form YYYY-MM-DD-slug.* in the src/blog/foo/bar directory, which would automatically create a BlogMummifier somehow, which would generate target/site/foo/bar/YYYY/MM-DD with the directory entries, along with some landing page that would pull in teasers from the blog pages. But after some thinking, it may be better to disconnect these two capabilities.

Instead we will give a normal directory mummifier the capability to recognize source files in the form @YYYY-MM-DD-slug.* (note the @ at the beginning) as representing a "post" artifact, a type of page artifact. Rather than placing the posts in some separate src/blog/foo/bar directory, they could be placed in the main src/site/ tree at any level (in a directory using a DirectoryMummifier, that is). The target file would automatically be determined as ./YYYY/MM/DD/slug.html.

This would allow extreme flexibility. The @ filename prefix would be analogous to the . and _ prefixes we already recognize, and shouldn't cause many conflicts with existing files.

The actual "blog widget" would be a separate piece of functionality (built with another ticket) which could be embedded in any page or template, and would at mummification time iterate the child artifacts of type PostArtifact and generate HTML for them.

Environment

None

Assignee

Garret Wilson

Reporter

Garret Wilson

Labels

None

Components

Fix versions

Priority

Critical
Configure