Skip to content

Commit

Permalink
docs: update blog-post
Browse files Browse the repository at this point in the history
  • Loading branch information
sy-records committed Dec 5, 2024
1 parent 34ee807 commit ca932ad
Show file tree
Hide file tree
Showing 3 changed files with 117 additions and 117 deletions.
16 changes: 8 additions & 8 deletions community/contributing/blog-post.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,23 +76,23 @@ authors: [Anne] # separate with commas [Anne, others]
2. To ensure that the final article URL follows a format like `/blog/hello-world`, we've established the following naming convention for each article file:

- **Plain Text**
- Directly create a file named `2023-06-01-hello-world.md` in the `/blog` directory.
- Directly create a file named `hello-world.md` in the `/blog` directory.
- **Rich Text**
- Create a directory named `/2023-06-01-foo-bar` in the `/blog` directory.
- Create an `index.md` file inside the `/2023-06-01-foo-bar` directory.
- Create a directory named `/foo-bar` in the `/blog` directory.
- Create an `index.md` file inside the `/foo-bar` directory.
- Images and other multimedia content should also be placed within this directory.

To maintain semantic and unique article URLs, we recommend using the blog's title after the date when naming files or folders. Convert the title to lowercase and connect the words with hyphens, and writing the converted lowercase letters to the metadata in the file.
To maintain semantic and unique article URLs, we recommend using the blog's title when naming files or folders. Convert the title to lowercase and connect the words with hyphens. This eliminates the need to worry about the slug field on the page. Avoid specifying the slug field unless it's absolutely necessary.

For instance, if the blog's title is `Hello World`, the file can be named `2023-06-01-hello-world`, writing `slug: hello-world`, This will generate the URL `/blog/hello-world`.
For instance, if the blog's title is `Hello World`, the file can be named `hello-world`, This will generate the URL `/blog/hello-world`.

```shell
blog
├── 2023-06-01-foo-bar # Use directory for images.
├── foo-bar # Use directory for images.
│ ├── index.md
│ ├── sample.png
│ └── ...
├── 2023-06-01-hello-world.md # Use file for plain text.
├── hello-world.md # Use file for plain text.
└── ...
```

Expand All @@ -109,7 +109,7 @@ authors: [Anne] # separate with commas [Anne, others]
Check the example below.

```yaml
slug: the-what-why-using-tags-for-online-community
date: 2023-07-11
title: The What, Why Using Tags for Online Community
authors: [Anne]
category: Insights // value reference in blog type
Expand Down
202 changes: 101 additions & 101 deletions docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ const config = {
plugins: [
// Use custom blog plugin
[
"./plugins/blog-plugin",
'./plugins/blog-plugin',
{
blogTitle: 'Answer Blog',
blogDescription: 'Learn everything about Answer and leverage your Q&A community.',
Expand Down Expand Up @@ -256,204 +256,204 @@ const config = {
from: '/community/plugins/plugin-translation',
},
{
to: "/blog/answer-1.0.9-release",
from: "/blog/2023/05/11/answer-1.0.9-release"
to: '/blog/answer-1.0.9-release',
from: '/blog/2023/05/11/answer-1.0.9-release'
},
{
to: "/blog/what-is-q-and-a-platform-and-how-to-use-it",
from: "/blog/2023/05/12/what-is-q-and-a-platform-and-how-to-use-it"
to: '/blog/what-is-q-and-a-platform-and-how-to-use-it',
from: '/blog/2023/05/12/what-is-q-and-a-platform-and-how-to-use-it'
},
{
to: "/blog/how-to-use-answer-for-effective-knowledge-retention",
from: "/blog/2023/05/16/how-to-use-answer-for-effective-knowledge-retention"
to: '/blog/how-to-use-answer-for-effective-knowledge-retention',
from: '/blog/2023/05/16/how-to-use-answer-for-effective-knowledge-retention'
},
{
to: "/blog/why-open-source-is-the-essence-of-answer",
from: "/blog/2023/05/23/why-open-source-is-the-essence-of-answer"
to: '/blog/why-open-source-is-the-essence-of-answer',
from: '/blog/2023/05/23/why-open-source-is-the-essence-of-answer'
},
{
to: "/blog/everything-you-need-to-know-about-knowledge-base",
from: "/blog/2023/05/30/everything-you-need-to-know-about-knowledge-base"
to: '/blog/everything-you-need-to-know-about-knowledge-base',
from: '/blog/2023/05/30/everything-you-need-to-know-about-knowledge-base'
},
{
to: "/blog/answer-1.1.0-release",
from: "/blog/2023/06/15/answer-1.1.0-release"
to: '/blog/answer-1.1.0-release',
from: '/blog/2023/06/15/answer-1.1.0-release'
},
{
to: "/blog/how-to-improve-knowledge-sharing-with-answer",
from: "/blog/2023/06/20/how-to-improve-knowledge-sharing-with-answer"
to: '/blog/how-to-improve-knowledge-sharing-with-answer',
from: '/blog/2023/06/20/how-to-improve-knowledge-sharing-with-answer'
},
{
to: "/blog/everything-you-need-to-know-about-answer",
from: "/blog/2023/06/29/everything-you-need-to-know-about-answer"
to: '/blog/everything-you-need-to-know-about-answer',
from: '/blog/2023/06/29/everything-you-need-to-know-about-answer'
},
{
to: "/blog/how-to-build-a-help-center-with-your-users-and-answer",
from: "/blog/2023/07/05/how-to-build-a-help-center-with-your-users-and-answer"
to: '/blog/how-to-build-a-help-center-with-your-users-and-answer',
from: '/blog/2023/07/05/how-to-build-a-help-center-with-your-users-and-answer'
},
{
to: "/blog/the-what-why-using-tags-for-online-community",
from: "/blog/2023/07/11/the-what-why-using-tags-for-online-community"
to: '/blog/the-what-why-using-tags-for-online-community',
from: '/blog/2023/07/11/the-what-why-using-tags-for-online-community'
},
{
to: "/blog/how-to-utilize-reputation-and-privilege-in-online-community",
from: "/blog/2023/07/19/how-to-utilize-reputation-and-privilege-in-online-community"
to: '/blog/how-to-utilize-reputation-and-privilege-in-online-community',
from: '/blog/2023/07/19/how-to-utilize-reputation-and-privilege-in-online-community'
},
{
to: "/blog/why-the-answer-plugin-system-was-designed-this-way",
from: "/blog/2023/07/22/why-the-answer-plugin-system-was-designed-this-way"
to: '/blog/why-the-answer-plugin-system-was-designed-this-way',
from: '/blog/2023/07/22/why-the-answer-plugin-system-was-designed-this-way'
},
{
to: "/blog/how-to-manage-content-system-efficiently-with-answer",
from: "/blog/2023/08/09/how-to-manage-content-system-efficiently-with-answer"
to: '/blog/how-to-manage-content-system-efficiently-with-answer',
from: '/blog/2023/08/09/how-to-manage-content-system-efficiently-with-answer'
},
{
to: "/blog/build-your-online-community-like-the-pros-with-answer",
from: "/blog/2023/09/14/build-your-online-community-like-the-pros-with-answer"
to: '/blog/build-your-online-community-like-the-pros-with-answer',
from: '/blog/2023/09/14/build-your-online-community-like-the-pros-with-answer'
},
{
to: "/blog/celebrate-answer-first-anniversary-with-hacktoberfest-2023",
from: "/blog/2023/09/27/celebrate-answer-first-anniversary-with-hacktoberfest-2023"
to: '/blog/celebrate-answer-first-anniversary-with-hacktoberfest-2023',
from: '/blog/2023/09/27/celebrate-answer-first-anniversary-with-hacktoberfest-2023'
},
{
to: "/blog/answer-enters-apache-incubator",
from: "/blog/2023/10/24/answer-enters-apache-incubator"
to: '/blog/answer-enters-apache-incubator',
from: '/blog/2023/10/24/answer-enters-apache-incubator'
},
{
to: "/blog/answer-turns-one-and-is-now-apache-answer",
from: "/blog/2023/10/31/answer-turns-one-and-is-now-apache-answer"
to: '/blog/answer-turns-one-and-is-now-apache-answer',
from: '/blog/2023/10/31/answer-turns-one-and-is-now-apache-answer'
},
{
to: "/blog/a-new-chapter-begins-answer-first-apache-release-launches",
from: "/blog/2023/12/07/a-new-chapter-begins-answer-first-apache-release-launches"
to: '/blog/a-new-chapter-begins-answer-first-apache-release-launches',
from: '/blog/2023/12/07/a-new-chapter-begins-answer-first-apache-release-launches'
},
{
to: "/blog/behind-the-scene-how-we-launched-the-first-apache-release",
from: "/blog/2023/12/13/behind-the-scene-how-we-launched-the-first-apache-release"
to: '/blog/behind-the-scene-how-we-launched-the-first-apache-release',
from: '/blog/2023/12/13/behind-the-scene-how-we-launched-the-first-apache-release'
},
{
to: "/blog/answer-1.2.1-ask-better-find-better",
from: "/blog/2024/01/08/answer-1.2.1-ask-better-find-better"
to: '/blog/answer-1.2.1-ask-better-find-better',
from: '/blog/2024/01/08/answer-1.2.1-ask-better-find-better'
},
{
to: "/blog/first-contribution-come-to-answer",
from: "/blog/2024/01/25/first-contribution-come-to-answer"
to: '/blog/first-contribution-come-to-answer',
from: '/blog/2024/01/25/first-contribution-come-to-answer'
},
{
to: "/blog/deploy-answer-https",
from: "/blog/2024/01/26/deploy-answer-https"
to: '/blog/deploy-answer-https',
from: '/blog/2024/01/26/deploy-answer-https'
},
{
to: "/blog/must-read-notes-for-your-first-answer-contribution",
from: "/blog/2024/02/04/must-read-notes-for-your-first-answer-contribution"
to: '/blog/must-read-notes-for-your-first-answer-contribution',
from: '/blog/2024/02/04/must-read-notes-for-your-first-answer-contribution'
},
{
to: "/blog/project-ideas-for-google-summer-of-code-2024",
from: "/blog/2024/02/05/project-ideas-for-google-summer-of-code-2024"
to: '/blog/project-ideas-for-google-summer-of-code-2024',
from: '/blog/2024/02/05/project-ideas-for-google-summer-of-code-2024'
},
{
to: "/blog/answer-1.2.5-is-ready",
from: "/blog/2024/02/20/answer-1.2.5-is-ready"
to: '/blog/answer-1.2.5-is-ready',
from: '/blog/2024/02/20/answer-1.2.5-is-ready'
},
{
to: "/blog/meet-our-release-manager-linkinstars",
from: "/blog/2024/03/18/meet-our-release-manager-linkinstars"
to: '/blog/meet-our-release-manager-linkinstars',
from: '/blog/2024/03/18/meet-our-release-manager-linkinstars'
},
{
to: "/blog/what-is-new-in-apache-answer-1.3.0",
from: "/blog/2024/04/26/what-is-new-in-apache-answer-1.3.0"
to: '/blog/what-is-new-in-apache-answer-1.3.0',
from: '/blog/2024/04/26/what-is-new-in-apache-answer-1.3.0'
},
{
to: "/blog/answer-ospp-2024",
from: "/blog/2024/05/09/answer-ospp-2024"
to: '/blog/answer-ospp-2024',
from: '/blog/2024/05/09/answer-ospp-2024'
},
{
to: "/blog/build-a-save-and-respectful-community-with-answer-1.3.1",
from: "/blog/2024/05/28/build-a-save-and-respectful-community-with-answer-1.3.1"
to: '/blog/build-a-save-and-respectful-community-with-answer-1.3.1',
from: '/blog/2024/05/28/build-a-save-and-respectful-community-with-answer-1.3.1'
},
{
to: "/blog/install-and-run-apache-answer-on-ubuntu-vps",
from: "/blog/2024/06/03/install-and-run-apache-answer-on-ubuntu-vps"
to: '/blog/install-and-run-apache-answer-on-ubuntu-vps',
from: '/blog/2024/06/03/install-and-run-apache-answer-on-ubuntu-vps'
},
{
to: "/blog/apache-answer-joined-first-alc-hangzhou-meetup",
from: "/blog/2024/06/05/apache-answer-joined-first-alc-hangzhou-meetup"
to: '/blog/apache-answer-joined-first-alc-hangzhou-meetup',
from: '/blog/2024/06/05/apache-answer-joined-first-alc-hangzhou-meetup'
},
{
to: "/blog/how-to-search-like-a-pro-in-answer",
from: "/blog/2024/06/20/how-to-search-like-a-pro-in-answer"
to: '/blog/how-to-search-like-a-pro-in-answer',
from: '/blog/2024/06/20/how-to-search-like-a-pro-in-answer'
},
{
to: "/blog/answer-recap-june",
from: "/blog/2024/07/01/answer-recap-june"
to: '/blog/answer-recap-june',
from: '/blog/2024/07/01/answer-recap-june'
},
{
to: "/blog/how-to-package-and-deploy-answer-plugins",
from: "/blog/2024/07/02/how-to-package-and-deploy-answer-plugins"
to: '/blog/how-to-package-and-deploy-answer-plugins',
from: '/blog/2024/07/02/how-to-package-and-deploy-answer-plugins'
},
{
to: "/blog/answer-1.3.5-release",
from: "/blog/2024/07/03/answer-1.3.5-release"
to: '/blog/answer-1.3.5-release',
from: '/blog/2024/07/03/answer-1.3.5-release'
},
{
to: "/blog/apache-answer-coc-asia-2024",
from: "/blog/2024/07/11/apache-answer-coc-asia-2024"
to: '/blog/apache-answer-coc-asia-2024',
from: '/blog/2024/07/11/apache-answer-coc-asia-2024'
},
{
to: "/blog/answer-recap-july",
from: "/blog/2024/08/01/answer-recap-july"
to: '/blog/answer-recap-july',
from: '/blog/2024/08/01/answer-recap-july'
},
{
to: "/blog/reflection-and-tips-for-your-next-open-source-events",
from: "/blog/2024/08/14/reflection-and-tips-for-your-next-open-source-events"
to: '/blog/reflection-and-tips-for-your-next-open-source-events',
from: '/blog/2024/08/14/reflection-and-tips-for-your-next-open-source-events'
},
{
to: "/blog/answer-1.3.6-release",
from: "/blog/2024/08/15/answer-1.3.6-release"
to: '/blog/answer-1.3.6-release',
from: '/blog/2024/08/15/answer-1.3.6-release'
},
{
to: "/blog/apache-answer-frontend-configuration-guide",
from: "/blog/2024/08/16/apache-answer-frontend-configuration-guide"
to: '/blog/apache-answer-frontend-configuration-guide',
from: '/blog/2024/08/16/apache-answer-frontend-configuration-guide'
},
{
to: "/blog/apache-answer-backend-configuration-guide",
from: "/blog/2024/08/20/apache-answer-backend-configuration-guide"
to: '/blog/apache-answer-backend-configuration-guide',
from: '/blog/2024/08/20/apache-answer-backend-configuration-guide'
},
{
to: "/blog/guide-to-add-answer-plugins",
from: "/blog/2024/08/22/guide-to-add-answer-plugins"
to: '/blog/guide-to-add-answer-plugins',
from: '/blog/2024/08/22/guide-to-add-answer-plugins'
},
{
to: "/blog/answer-recap-august",
from: "/blog/2024/09/02/answer-recap-august"
to: '/blog/answer-recap-august',
from: '/blog/2024/09/02/answer-recap-august'
},
{
to: "/blog/behind-the-plugin-meet-the-student-contributors",
from: "/blog/2024/09/11/behind-the-plugin-meet-the-student-contributors"
to: '/blog/behind-the-plugin-meet-the-student-contributors',
from: '/blog/2024/09/11/behind-the-plugin-meet-the-student-contributors'
},
{
to: "/blog/answer-1.4.0-release",
from: "/blog/2024/09/29/answer-1.4.0-release"
to: '/blog/answer-1.4.0-release',
from: '/blog/2024/09/29/answer-1.4.0-release'
},
{
to: "/blog/answer-recap-sept",
from: "/blog/2024/10/01/answer-recap-sept"
to: '/blog/answer-recap-sept',
from: '/blog/2024/10/01/answer-recap-sept'
},
{
to: "/blog/answer-recap-october",
from: "/blog/2024/11/04/answer-recap-october"
to: '/blog/answer-recap-october',
from: '/blog/2024/11/04/answer-recap-october'
},
{
to: "/blog/how-release-managers-make-the-release-process-productive",
from: "/blog/2024/11/13/how-release-managers-make-the-release-process-productive"
to: '/blog/how-release-managers-make-the-release-process-productive',
from: '/blog/2024/11/13/how-release-managers-make-the-release-process-productive'
},
{
to: "/blog/lufei-asf-journey-from-contributor-to-ppmc-member",
from: "/blog/2024/11/22/lufei-asf-journey-from-contributor-to-ppmc-member"
to: '/blog/lufei-asf-journey-from-contributor-to-ppmc-member',
from: '/blog/2024/11/22/lufei-asf-journey-from-contributor-to-ppmc-member'
},
{
to: "/blog/apache-answer-1.4.1-release",
from: "/blog/2024/11/27/apache-answer-1.4.1-release"
to: '/blog/apache-answer-1.4.1-release',
from: '/blog/2024/11/27/apache-answer-1.4.1-release'
}
],
},
Expand Down
Loading

0 comments on commit ca932ad

Please sign in to comment.