Adding a Blog
#
Initial SetupTo setup your site's blog, start by creating a blog
directory within your repo's website
directory.
Then, add a header link to your blog within siteConfig.js
:
#
Adding PostsTo publish in the blog, create a file within the blog directory with a formatted name of YYYY-MM-DD-My-Blog-Post-Title.md
. The post date is extracted from the file name.
For example, at website/blog/2017-08-18-Introducing-Docusaurus.md
:
#
Header OptionsThe only required field is title
; however, we provide options to add author information to your blog post as well.
author
- The text label of the author byline.authorURL
- The URL associated with the author. This could be a Twitter, GitHub, Facebook account, etc.authorFBID
- The Facebook profile ID that is used to fetch the profile picture.authorImageURL
- The URL to the author's image. (Note: If you use bothauthorFBID
andauthorImageURL
,authorFBID
will take precedence. Don't includeauthorFBID
if you wantauthorImageURL
to appear.)title
- The blog post title.
#
Summary TruncationUse the <!--truncate-->
marker in your blog post to represent what will be shown as the summary when viewing all published blog posts. Anything above <!--truncate-->
will be part of the summary. For example:
#
Changing How Many Blog Posts Show on SidebarBy default, 5 recent blog posts are shown on the sidebar.
You can configure a specific amount of blog posts to show by adding a blogSidebarCount
setting to your siteConfig.js
.
The available options are an integer representing the number of posts you wish to show or a string with the value 'ALL'
.
Example:
#
Changing The Sidebar TitleYou can configure a specific sidebar title by adding a blogSidebarTitle
setting to your siteConfig.js
.
The option is an object which can have the keys default
and all
. Specifying a value for default
allows you to change the default sidebar title. Specifying a value for all
allows you to change the sidebar title when the blogSidebarCount
option is set to 'ALL'
.
Example:
#
RSS FeedDocusaurus provides an RSS feed for your blog posts. Both RSS and Atom feed formats are supported. This data is automatically to your website page's HTML <HEAD>
tag.
A summary of the post's text is provided in the RSS feed up to the <!--truncate-->
. If no <!--truncate-->
tag is found, then all text up 250 characters are used.
#
Social ButtonsIf you want Facebook and/or Twitter social buttons at the bottom of your blog posts, set the facebookAppId
and/or twitter
site configuration options in siteConfig.js
.
#
Advanced Topics#
I want to run in "Blog Only" mode.You can run your Docusaurus site without a landing page and instead have your blog load first.
To do this:
- Create a file
index.html
inwebsite/static/
. - Place the contents of the template below into
website/static/index.html
- Customize the
<title>
ofwebsite/static/index.html
- Delete the dynamic landing page
website/pages/en/index.js
Now, when Docusaurus generates or builds your site, it will copy the file from
static/index.html
and place it in the site's main directory. The static file is served when a visitor arrives on your page. When the page loads it will redirect the visitor to/blog
.
You can use this template: