diff --git a/content/applications/websites/website/structure/seo.rst b/content/applications/websites/website/structure/seo.rst index 3246f5d879..62fd316236 100644 --- a/content/applications/websites/website/structure/seo.rst +++ b/content/applications/websites/website/structure/seo.rst @@ -28,13 +28,33 @@ Optimize SEO`. .. image:: seo/optimize-seo.png :alt: Optimize SEO -Meta tags ---------- +.. note:: + If you change the title of a blog post or the name of a product, the link to the related webpage + is automatically updated. The old link still functions as Odoo creates a + :ref:`301 redirect `, maintaining the SEO. + +Keywords and Meta tags +---------------------- + +There are two types of keywords in SEO, which serve different purposes. + +In-text keywords +~~~~~~~~~~~~~~~~ + +In-text keywords appear naturally throughout a page’s visible content (titles, headings, and body +text) and help search engines determine the topic and relevance of the page. These keywords have a +real impact on ranking. They cannot be edited in the :guilabel:`optimize SEO` pop-up. + +.. important:: + It is strongly recommended to only use one H1 title per page for SEO. -Meta tags are HTML elements that provide information about a webpage to search engines and website -visitors. They play a crucial role in SEO by helping search engines understand the content and -context of a webpage and attract visitors with appealing content. There are two types of meta tags -in Odoo: +Meta tags and meta keywords +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +**Meta tags** are HTML elements that provide information about a webpage to search engines and +website visitors. They play a crucial role in SEO by helping search engines understand the content +and context of a webpage and attract visitors with appealing content. They can be edited in the +:guilabel:`optimize SEO` pop-up. There are two types of meta tags in Odoo: - :guilabel:`Title` tags specify a webpage's title and are displayed as a clickable link in search engine results. They should be concise, descriptive, and relevant to the page's content. You can @@ -50,36 +70,15 @@ in Odoo: The :guilabel:`Preview` card displays how the title and description tags should appear in search results. It also includes the URL of your page. -Keywords --------- - -Keywords are one of the main elements of SEO. A website that is well optimized for search engines -speaks the same language as potential visitors, with keywords for SEO helping them to connect to -your site. - -You can enter the keywords you consider essential in the :guilabel:`Keyword` field and click -:guilabel:`ADD` to see how they are used at different levels in your content (H1, H2, page title, +**Meta keywords** are placed in a hidden HTML tag ``. Once used to describe a +page’s topic, this tag is now ignored by major search engines and has little or no impact on SEO. +To edit :guilabel:`Keywords`, enter the keywords you consider essential in this field and click +:guilabel:`Add` to see how they are used at different levels in your content (H1, H2, page title, page description, page content) and the related searches in Google. The tool also suggests relevant -keywords to drive your web traffic. The more keywords are present on your webpage, the better. - -.. tip:: - It is strongly recommended to only use one H1 title per page for SEO. - -Image for social share ----------------------- - -When you share your page on social media, your logo image is selected, but you can upload any other -image by clicking the upward arrow. - -.. Note:: - - The :guilabel:`Social Preview` card displays how the page's information would appear when - shared. - - If you change the title of a blog post or the name of a product, the changes apply - automatically everywhere on your website. The old link still functions when external websites - use a :ref:`301 redirect `, maintaining the SEO link juice. +keywords. Images -====== +------ The size of images has a significant impact on page speed, which is an essential criterion for search engines to optimize SEO ranking. @@ -97,72 +96,65 @@ efficiently. **To modify an image** from your website, select the image, click :guilabel:`Edit`, then go to the :guilabel:`Customize` tab, and adapt the :guilabel:`Format` in the :guilabel:`Image` section. -.. image:: seo/image-format.png - :alt: automated image compression - .. important:: Alt tags are used to provide context to what an image is displaying, informing search engine crawlers and allowing them to index an image correctly. Adding alt tags keywords in the :guilabel:`Description` field is essential from an SEO perspective. This description is added to the HTML code of your image, and it is shown when the image cannot be displayed. -Advanced features -================= - -Structured data markup ----------------------- +Image for social share +~~~~~~~~~~~~~~~~~~~~~~ -Structured data markup is used to generate rich snippets in search engine results. It is a way for -websites to send structured data to search engine robots, helping them understand your content and -create well-presented search results. +When you share your page on social media, your website logo is selected by default, but you can +search the :doc:`Unsplash image library <../../../general/integrations/unsplash>` or upload any +other image by clicking the :icon:`fa-upload` :guilabel:`(upload)` button. -By default, Google supports many `rich snippets `_ -for content types, including Reviews, People, Products, Businesses, Events, and Organizations. +.. tip:: + You can set a default social share image. Go to :menuselection:`Website --> Configuration --> Settings` + in the :guilabel:`SEO`section and tick the :guilabel:`Default Social Share Image` checkbox. -Microdata is a set of tags, introduced with HTML5, that help search engines better understand your -content and display it in a relevant way. Odoo implements microdata as defined in the schema.org -`specification `_ for events, eCommerce products, forum posts, and -contact addresses. This allows your product pages to be displayed in Google using extra information -like the price and rating of a product: +.. note:: + - The :guilabel:`Social Preview` card displays how the page's information would appear when + shared. -.. image:: seo/data-markup.png - :alt: snippets in search engine results +Indexation +========== -robots.txt ----------- +Website indexation is the process by which search engines, such as Google, discover, analyze, and +store information about a website's content in their database. Search engine bots, known as crawlers +or spiders, visit web pages and follow links to collect data, including text, images, and other +media. The purpose of indexation is to make a website's content searchable and discoverable to +users. Without being indexed, a website or a specific page on that site will not appear in search +engine results, regardless of how relevant or well-designed it is. Indexation is a fundamental step +in :abbr:`SEO (Search Engine Optimization)`, serving as the foundation for a website's visibility +and organic traffic. -A `robots.txt` file instructs search engine crawlers which parts of a website they are permitted to -access. Its primary purpose is to: +.. note:: + **When you first create your website on Odoo, it will not appear directly in search engine + results.** Search engines need time to crawl and index it, which can take anywhere from a few + days to several weeks. For Google, you can use the :doc:`Search Console <../configuration/google_search_console>` + and request indexing for specific URLs, though this does not guarantee faster results. + If you have an existing website and are migrating, your previous website may still appear instead + of the new one during that timeframe. - - **Prevent overloading the website:** By guiding crawlers away from certain sections, robots.txt - helps manage server load. - - **Control access to resources and detailed descriptions:** It can prevent crawlers from accessing - media files (images, videos), CSS stylesheets, and JavaScript files, and from reading the content - (text) of specific pages. +SEO impact when migrating your existing website to Odoo +------------------------------------------------------- -When indexing your website, search engines first look at the robots.txt file. Odoo automatically -creates one robot.txt file available on `mydatabase.odoo.com/robots.txt`. +In most cases, migrating to Odoo will not negatively impact your SEO. While no platform can +guarantee that rankings will remain unchanged, follow these best practices to significantly reduce +the risk. -.. note:: - Reputable bots adhere to robots.txt; others may require blocking via - :ref:`Cloudflare ` on your custom domain. +- Keep your existing content. -Edit robots.txt -~~~~~~~~~~~~~~~ +- Implement :ref:`redirects ` from old URLs to their new counterparts. -By editing a robots.txt file, you can control which site pages are accessible to search engine -crawlers. To add custom instructions to the file, go to :menuselection:`Website --> Configuration ---> Settings`, scroll down to the :guilabel:`SEO` section, and click :guilabel:`Edit robots.txt`. +- Monitor traffic and indexation to make sure that everything is going well, using :doc:`../configuration/google_search_console`. -.. example:: - If you do not want robots to crawl the `/about-us` page of your site, you can edit the - robots.txt file to add `Disallow: /about-us`. +By doing this, you help search engines reindex your site and maintain your visibility in search +results. -.. important:: - While `robots.txt` prevents content from being crawled, **it does not guarantee that a page - will not be indexed**. A page can still appear in search results if it is linked to from other - crawled pages (indexed by "reference"). Google generally does not recommend using robots.txt to - block webpages that you wish to keep out of search results entirely. +.. note:: + It is normal to experience a traffic decrease in the first days. Prevent a page from being indexed --------------------------------- @@ -191,12 +183,30 @@ methods: - :doc:`../configuration/google_search_console` - :doc:`pages` +Prevent a website from being indexed +------------------------------------ + +To prevent a website from appearing in search engine results, go to +:menuselection:`Configuration --> Settings`, then in the :guilabel:`Website Info` section, add a +random value in the :guilabel:`Domain` field. Doing so automatically inserts the following tag into +the page source: + +.. code-block:: html + + + +This tag instructs search engines not to index the site. After applying the change, it may take +several days or weeks for search engines to update their results and remove the website. + +.. example:: + This can be used to prevent websites from test databases from appearing in search results. + Sitemap -------- +======= -The sitemap points out website pages and their relation to each other to search engine robots. Odoo -generates a `/sitemap.xml` file, including all URLs. For performance reasons, this file is cached -and updated every 12 hours. +The sitemap points out website pages and their relation to each other to search engine crawlers. +Odoo generates a `/sitemap.xml` file, including all URLs. For performance reasons, this file is +cached and updated every 12 hours. .. note:: If your website has a lot of pages, Odoo automatically creates a Sitemap Index file, respecting @@ -214,11 +224,69 @@ Every sitemap entry has three attributes that are computed automatically: a static page is defined by its priority field, which is normalized (16 is the default). .. tip:: - To prevent pages from appearing in a sitemap, go to :menuselection:`Site --> Properties`, click - the :guilabel:`Publish` tab, and turn off the :guilabel:`Indexed` feature. + To prevent pages from appearing in a sitemap, go to :menuselection:`Site --> Properties`, and + toggle off the :guilabel:`Indexed` feature. .. image:: seo/page-properties.png - :alt: disabling the “Indexed” checkbox + :alt: toggle off the “Indexed” field + +robots.txt +========== + +A `robots.txt` file instructs search engine crawlers which parts of a website they are permitted to +access. Its primary purpose is to: + + - **Prevent overloading the website:** By guiding crawlers away from certain sections, robots.txt + helps manage server load. + - **Control access to resources and detailed descriptions:** It can prevent crawlers from accessing + media files (images, videos), CSS stylesheets, and JavaScript files, and from reading the content + (text) of specific pages. + +When indexing your website, search engines first look at the robots.txt file. Odoo automatically +creates one robot.txt file available on `mydatabase.odoo.com/robots.txt`. + +.. note:: + Reputable bots adhere to robots.txt; others may require blocking via + :ref:`Cloudflare ` on your custom domain. + +Edit robots.txt +--------------- + +By editing a robots.txt file, you can control which site pages are accessible to search engine +crawlers. To add custom instructions to the file, go to :menuselection:`Website --> Configuration +--> Settings`, scroll down to the :guilabel:`SEO` section, and click :guilabel:`Edit robots.txt`. + +.. example:: + If you do not want robots to crawl the `/about-us` page of your site, you can edit the + robots.txt file to add `Disallow: /about-us`. + +.. important:: + While `robots.txt` prevents content from being crawled, **it does not guarantee that a page + will not be indexed**. A page can still appear in search results if it is linked to from other + crawled pages (indexed by "reference"). Google generally does not recommend using robots.txt to + block webpages that you wish to keep out of search results entirely. + +Advanced features +================= + +Structured data markup +---------------------- + +Structured data markup is used to generate rich snippets in search engine results. It is a way for +websites to send structured data to search engine crawlers, helping them understand your content and +create well-presented search results. + +By default, Google supports many `rich snippets `_ +for content types, including Reviews, People, Products, Businesses, Events, and Organizations. + +Microdata is a set of tags, introduced with HTML5, that help search engines better understand your +content and display it in a relevant way. Odoo implements microdata as defined in the schema.org +`specification `_ for events, eCommerce products, forum posts, and +contact addresses. This allows your product pages to be displayed in Google using extra information +like the price and rating of a product: + +.. image:: seo/rich-snippet.png + :alt: snippets in search engine results Hreflang HTML tags ------------------ diff --git a/content/applications/websites/website/structure/seo/data-markup.png b/content/applications/websites/website/structure/seo/data-markup.png deleted file mode 100644 index 11a9cc47c8..0000000000 Binary files a/content/applications/websites/website/structure/seo/data-markup.png and /dev/null differ diff --git a/content/applications/websites/website/structure/seo/image-format.png b/content/applications/websites/website/structure/seo/image-format.png deleted file mode 100644 index ca2381731f..0000000000 Binary files a/content/applications/websites/website/structure/seo/image-format.png and /dev/null differ diff --git a/content/applications/websites/website/structure/seo/optimize-seo.png b/content/applications/websites/website/structure/seo/optimize-seo.png index c1e03d72c5..8a1cb223dd 100644 Binary files a/content/applications/websites/website/structure/seo/optimize-seo.png and b/content/applications/websites/website/structure/seo/optimize-seo.png differ diff --git a/content/applications/websites/website/structure/seo/page-properties.png b/content/applications/websites/website/structure/seo/page-properties.png index d7404e21ef..1e8d6b96a8 100644 Binary files a/content/applications/websites/website/structure/seo/page-properties.png and b/content/applications/websites/website/structure/seo/page-properties.png differ diff --git a/content/applications/websites/website/structure/seo/rich-snippet.png b/content/applications/websites/website/structure/seo/rich-snippet.png new file mode 100644 index 0000000000..92e207e160 Binary files /dev/null and b/content/applications/websites/website/structure/seo/rich-snippet.png differ