Writing Pages
Bloggrify is made to let you write all your content in Markdown and Vue components with the MDC syntax.
Each Markdown pages in the content/
folder will be mapped to a route.
File | Generated route |
---|---|
index.md | / |
about.md | /about |
2024-02-24/post01.md | /2024-02-02/post01 |
2024/02/24/post01.md | /2024/02/02/post01 |
It is highly recommended to use a hierarchical structure for the files, to make the blog more organized and to make the urls more meaningful.
Frontmatter
All the files are markdown files with a frontmatter at the top of the file. They are all listed on the index page, except the ones
- with the
draft: true
property. - with the
listed: false
property.
Bloggrify supports multiple Front-matter attributes for pages.
It also supports frontmatter to add metadata to your markdown files.
---
id: "2"
title: "Use markdown power"
description: "Use markdown at its full potential."
date: "2024-02-09"
tags:
- markdown
cover: "doc/markdown.png"
---
Here is the list of all the frontmatter attributes:
Key | Default | Type | Description |
---|---|---|---|
id | string | mandatory if you want to use the comment system. It is used to identify the article. | |
title | string | Defines the page title | |
description | string | Defines the page description. Important for SEO | |
date | string | is used to sort the articles. Date in the future will not be displayed. (format: YYYY-MM-DD) | |
cover | string | Image for the blog post, also used as an OpenGraph cover image | |
comments | false | boolean | Disable comments on this page |
listed | true | boolean | Toogles the visibility of this page on the index page. But the page is still visible and listed on Google. Example: an about page |
hidden | false | boolean | Toogles the visibility everywhere, but the url still works. Example: a redirect page |
draft | false | boolean | It's like "hidden" AND the url don't work. |
table_of_contents | boolean | Toogles the table of content on the sidebar (depends on the theme) | |
tags | array | List of tags related to the article | |
categories | array | List of categories related to the article | |
redirect_to_domain | array | Permanent redirect (301) to another domain with the same path. See documentation | |
redirect_to_full_url | array | Permanent redirect (301) to another url. See documentation | |
language | string | The language of the blog post, only used for alternates version if any | |
alternates | array | The language of the blog post, only used for alternates version if any | |
alternates.LANGCODE | string | The url of a page with the same content in another language (to avoid duplicate content and explicit the relation between the two pages) |