You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/docs/conceptual/choosing-a-cms.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@ If you're looking for a primary CMS (general-purpose, flexible content modelling
14
14
15
15
**First**, when possible, we recommend you focus on **top-flight general-purpose CMSs** with **first-class Gatsby integrations** and **high popularity** among Gatsby users. A ["first-class integration"](https://support.gatsbyjs.com/hc/en-us/articles/360052503494-Developing-a-first-class-CMS-integration-for-Gatsby-Cloud) means it supports the main Cloud functionality of Gatsby -- previews and incremental builds.
16
16
17
-
In terms of popularity, you can see [top integrations listed by monthly downloads here](https://www.gatsbyjs.com/plugins?=gatsby-source). There are currently (January 2021) eight CMSs used by over 1% of Gatsby users. These are:
17
+
In terms of popularity, you can see [top integrations listed by monthly downloads here](/plugins?=gatsby-source). There are currently (January 2021) eight CMSs used by over 1% of Gatsby users. These are:
18
18
19
19
-**five general-purpose headless CMSs:** Contentful, DatoCMS, Prismic, Sanity and Strapi
20
20
@@ -51,7 +51,7 @@ Users choosing other CMSs typically have a specific reason for their choice. Som
51
51
52
52
There are instances where using only one CMS would feel awkward; for example, if a particular CMS works well for one section of the site but is less good for the rest of the site.
53
53
54
-
Gatsby makes it easy to use different CMSs for different parts of the website, what is known as a ["content mesh" approach](https://www.gatsbyjs.com/blog/2018-10-04-journey-to-the-content-mesh/).
54
+
Gatsby makes it easy to use different CMSs for different parts of the website, what is known as a ["content mesh" approach](/blog/2018-10-04-journey-to-the-content-mesh/).
55
55
56
56
Typically, teams that use multiple CMSs use a specialized CMS for part of the website and a general-purpose CMS for the rest of the website. The two most common examples are:
57
57
@@ -61,7 +61,7 @@ Typically, teams that use multiple CMSs use a specialized CMS for part of the we
61
61
-**Using WordPress as a blogging tool.**
62
62
- WordPress is very familiar to content authors and has a best-in-class content composition experience
63
63
- As a result, some teams move the blog portion of the website with Gatsby, and use a flexible content modelling CMS for the rest of the website.
64
-
- Apollo does this (source: [tweet from Apollo](https://twitter.com/apollographql/status/1250479066605662210)), as does the [Gatsby blog](gatsbyjs.com/blog).
64
+
- Apollo does this (source: [tweet from Apollo](https://twitter.com/apollographql/status/1250479066605662210)), as does the [Gatsby blog](/blog/).
65
65
66
66
### Considerations when using multiple CMSs
67
67
@@ -71,7 +71,7 @@ The easiest way to create relationship references across CMSs is through one CMS
71
71
72
72
In this case, you'd store an array of WordPress blog post IDs as a field of the relevant model in Contentful, then pull in the correct data via the appropriate queries in `gatsby-node.js.`
73
73
74
-
To make that a bit more concrete, here's a screenshot of what this looks like currently (January 2020) in the Gatsbyjs.com Contentful setup for the [e-commerce use case page](https://www.gatsbyjs.com/use-cases/e-commerce); the model is called `Use Case Landing Page`, the field is called `Blog Posts`, and the items in the array are unique blog post IDs from WordPress:
74
+
To make that a bit more concrete, here's a screenshot of what this looks like currently (January 2020) in the Gatsbyjs.com Contentful setup for the [e-commerce use case page](/use-cases/e-commerce/); the model is called `Use Case Landing Page`, the field is called `Blog Posts`, and the items in the array are unique blog post IDs from WordPress:
75
75
76
76

77
77
@@ -83,6 +83,6 @@ Finally, there are several options for content composition and management that w
83
83
84
84
-**JSON** or **YAML** is a common choice for hierarchical data (for example, a site navigation tree), especially when the underlying content is stored in Markdown.
85
85
86
-
-**Web-based spreadsheets**, like **Airtable** or **Google Sheets**, are common use cases for tabular data. [Impossible Foods used Airtable to power their store locator](https://www.gatsbyjs.com/blog/2020-05-07-gatsby-delivers-impossible-burgers-map/), and [ProPublica used Google sheets as a database](https://www.gatsbyjs.com/blog/2019-03-29-interview-with-david-eads/) for interactive data journalism graphics.
86
+
-**Web-based spreadsheets**, like **Airtable** or **Google Sheets**, are common use cases for tabular data. [Impossible Foods used Airtable to power their store locator](/blog/2020-05-07-gatsby-delivers-impossible-burgers-map/), and [ProPublica used Google sheets as a database](/blog/2019-03-29-interview-with-david-eads/) for interactive data journalism graphics.
87
87
88
88
- Other domain-specific solutions for specific parts of the website (e.g., having a Careers page pull data from Greenhouse or Lever).
0 commit comments