Guide to Headless CMS and Strapi SEO best practices

Our community is looking for talented writers who are passionate about our ecosystem (jamstack, open-source, javascript) and willing to share their knowledge/experiences through our Write for the community program.


This is a companion discussion topic for the original entry at https://strapi.io/blog/headless-cms-strapi-seo-best-practices
1 Like

Hi,
this is a great article and it explained very well the points I was looking for. The question is, for metaTitle and MetaDescription, if I already have Title and Description fields, can I use them to auto-populate (metaTitle and MetaDescription) with same data Title and Description have?

In your example, you had to write the title again in the metaTitle field.

2 Likes

I’m interested too. I think that you have to create a code into the Model that manage data before saving.

1 Like

You can include another boolean field in your SEO component that could be overrideGlobalSeo or something. If this is true, then use this pages’ SEO instead of the global title and description you have set for your project.

I have a website that has been created by using stripe API. But for the last two months, I continue adding blogs on my website but these are not indexing. I tried every possible reason but still not indexing in Google.

Even any sitemap generator tools are unable to fetch all blog urls. Please suggest to me how can I fix this issue.

Here is my website: PropReturns.com

Looking for a positive and quick solution.

Thanks,

Interesting article thank you for sharing.

I have a question about Internationalization. UID it is unique but that is a problem when for multiple language you want to keep the same “slug”

eg.

///restaurants/restaurant-name
///fr/restaurants/restaurant-name

in this case what you suggest? Use the same approach, but just replace UID with a normal text field?

Hi!
It seems that you don’t have any direct links to your blog posts as well as to other pages (top navigation doesn’t have links as well).

Most of the crawlable URLs on your website are not indexable (all with ?AssetType=*) - they are canonicalized and the canonical URL for these URLs is https://www.propreturns.com/

You have to make all your URLs accessible through direct links (a href=“link_to_page”) to make sure that all your pages can be crawled by search engine bots.

It seems that you are using React for your frontend, so you will need to change your internal linking to make your pages accessible for search engine bots.

Hope this helps.

Absolutely! Just replace the UID by a string field instead :wink:

1 Like

Thank you, I’ll do like this