documentation/content/applications/websites/website/pages.rst
Donatienne (dopi) 79878321d6 [IMP] website: redirects
taskid-3667291

closes odoo/documentation#9129

X-original-commit: d2ba715df8
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Donatienne Pirlot (dopi) <dopi@odoo.com>
2024-05-03 07:26:05 +00:00

200 lines
9.0 KiB
ReStructuredText

:show-content:
=====
Pages
=====
Odoo allows you to create pages for your website and customize their content and appearance to your
needs.
.. _website/page_type:
**Static** pages have stable content, such as the homepage. You can manually create new ones, define
their URLs, adapt their :ref:`properties <website/page_properties>`, etc. **Dynamic** pages, on the
other hand, are generated dynamically. All pages generated automatically by Odoo, for example, when
you install an app or module (e.g., `/shop` or `/blog`) or publish a new product or blog post, are
dynamic pages and are therefore managed differently.
Page creation
=============
Website pages can be created from the **frontend** and the **backend**. To create a new website
page, proceed as follows:
#. - Either open the **Website** app, click :guilabel:`+ New` in the top-right corner, then select
:guilabel:`Page`;
- Or go to :menuselection:`Website --> Site --> Pages` and click :guilabel:`New`.
#. Enter a :guilabel:`Page Title`; this title is used in the menu and the page's URL.
#. Click :guilabel:`Create`.
#. Customize the page's content and appearance using the website builder, then click
:guilabel:`Save`.
#. :ref:`Publish <website/un-publish-page>` the page.
.. note::
Disable :guilabel:`Add to menu` if the page should not appear in the menu.
Page management
===============
.. _website/un-publish-page:
Publishing/unpublishing pages
-----------------------------
Pages need to be published to make them accessible to website visitors. To publish or unpublish a
page, access it and toggle the switch in the upper-right corner from :guilabel:`Unpublished`
to :guilabel:`Published`, or vice versa.
.. image:: pages/un-published_toggle.png
:alt: Unpublished/Published toggle
.. note::
It is also possible to:
- publish/unpublish a page from the :ref:`page properties <website/page_properties>`, where you
can define a publishing date and/or restrict the page's visibility if needed;
- publish/unpublish several pages at once: go to :menuselection:`Website --> Site --> Pages`,
select the pages, then click :guilabel:`Action` and select :guilabel:`Publish` or
:guilabel:`Unpublish`.
Homepage
--------
When you create a website, Odoo creates a dedicated :guilabel:`Home` page by default, but you can
define any website page as your homepage. To do so, go to :menuselection:`Website --> Configuration
--> Settings`, then, in the :guilabel:`Website info` section, define the URL of the desired page in
the field :guilabel:`Homepage URL` (e.g., `/shop`).
Alternatively, you can define any :ref:`static page <website/page_type>` as your homepage by going
to :menuselection:`Website --> Site --> Properties`. Select the :guilabel:`Publish` tab and enable
:guilabel:`Use as Homepage`.
.. _website/page_properties:
Page properties
---------------
To modify a :ref:`static page's <website/page_type>` properties, access the page you wish to
modify, then go to :menuselection:`Site --> Properties`.
The :guilabel:`Name` tab allows you to:
- rename the page using the :guilabel:`Page Name` field;
- modify the :guilabel:`Page URL`. In this case, you can redirect the old URL to the new one if
needed. To do so, enable :guilabel:`Redirect Old URL`, then select the :guilabel:`Type` of
:ref:`redirection <website/URL-redirection>`:
- :guilabel:`301 Moved permanently`: to redirect the page permanently;
- :guilabel:`302 Moved temporarily`: to redirect the page temporarily.
.. image:: pages/page-redirection.png
:alt: Redirect old URL
You can further adapt the page's properties in the :guilabel:`Publish` tab:
- :guilabel:`Show in Top Menu`: Disable if you don't want the page to appear in the menu;
- :guilabel:`Use as Homepage`: Enable if you want the page to be the homepage of your website;
- :guilabel:`Indexed`: Disable if you don't want the page to be shown in search engine results;
- :guilabel:`Published`: Enable to publish the page;
- :guilabel:`Publishing Date`: To publish the page at a specific moment, select the date,
click the clock icon to set the time, then click the green check mark to validate your selection.
- :guilabel:`Visibility`: Select who can access the page:
- :guilabel:`All`
- :guilabel:`Signed In`
- :guilabel:`Restricted Group`: Select the :doc:`user access group(s)
</applications/general/users/access_rights>` in the :guilabel:`Authorized group` field.
- :guilabel:`With Password`: Enter the password in the :guilabel:`Password` field.
.. tip::
*Some* of these properties can also be modified from :menuselection:`Website --> Site --> Pages`.
Duplicating pages
~~~~~~~~~~~~~~~~~
To duplicate a page, access the page, then go to :menuselection:`Site --> Properties` and click
:guilabel:`Duplicate Page`. Enter a :guilabel:`Page Name`, then click :guilabel:`OK`. By default,
the new page is added after the duplicated page in the menu, but you can remove it from the menu or
change its position using the :doc:`menu editor <pages/menus>`.
.. _website/delete-page:
Deleting pages
~~~~~~~~~~~~~~
To delete a page, proceed as follows:
#. Access the page, then go to :menuselection:`Site --> Properties` and click :guilabel:`Delete
Page`.
#. A pop-up window appears on the screen with all links referring to the page you want to delete,
organized by category. To ensure website visitors don't land on a 404 error page, you must update
all the links on your website referring to the page. To do so, expand a category, then click on a
link to open it in a new window. Alternatively, you can set up a :ref:`redirection
<website/URL-redirection>` for the deleted page.
#. Once you have updated the links (or set up a :ref:`redirection <website/URL-redirection>`),
select the :guilabel:`I am sure about this` check box, then click :guilabel:`OK`.
.. _website/URL-redirection:
URL redirect mapping
--------------------
URL redirect mapping consists in sending visitors and search engines to a URL different from
the one they initially requested. This technique is used, for example, to prevent broken links when
you :ref:`delete a page <website/delete-page>`, :ref:`modify its URL <website/page_properties>`, or
migrate your site from another platform to an Odoo :doc:`domain <configuration/domain_names>`. It
can also be used to improve :doc:`pages/seo`.
To access existing URL redirections and create new ones, :doc:`activate the developer mode
</applications/general/developer_mode>` and go to :menuselection:`Website --> Configuration -->
Redirects`.
.. note::
- A redirect record is added automatically every time you :ref:`modify a page's URL
<website/page_properties>` and enable :guilabel:`Redirect Old URL`.
- You can set up redirections for :ref:`static and dynamic pages <website/page_type>`.
To create a new redirection, click the :guilabel:`New` button, then fill in the fields:
- :guilabel:`Name`: Enter a name to identify the redirect.
- :guilabel:`Action`: Select the type of redirection:
- :guilabel:`404 Not found`: visitors are redirected to a 404 error page when they try to access
an unpublished or deleted page.
- :guilabel:`301 Moved Permanently`: for permanent redirections of unpublished or deleted
:ref:`static pages <website/page_type>`. The new URL is shown in search engine results, and the
redirect is cached by browsers.
- :guilabel:`302 Moved Temporarily`: for short-term redirections, for example, if you are
redesigning or updating a page. The new URL is neither cached by browsers nor shown in search
engine results.
- :guilabel:`308 Redirect/Rewrite`: for permanent redirections of existing :ref:`dynamic pages
<website/page_type>`. The URL is renamed; the new name is shown in search engine results and is
cached by browsers. Use this redirect type to rename a dynamic page, for example, if you wish
to rename `/shop` into `/market`.
- :guilabel:`URL from`: Enter the URL to be redirected (e.g., `/about-the-company`) or search for
the desired :ref:`dynamic page <website/page_type>` and select it from the list.
- :guilabel:`URL to`: For 301, 302, and 308 redirects, enter the URL to be redirected to. If you want
to redirect to an external URL, include the protocol (e.g., `https://`).
- :guilabel:`Website`: Select a specific website.
- :guilabel:`Sequence`: To define the order in which redirections are performed, e.g., in the case
of redirect chains (i.e., a series of redirects where one URL is redirected to another one, which
is itself further redirected to another URL).
Toggle the :guilabel:`Activate` switch to deactivate the redirection.
.. important::
404, 301, and 302 redirections are meant to migrate traffic from
:ref:`unpublished <website/un-publish-page>` or :ref:`deleted <website/delete-page>` pages
to *new* pages, while the 308 redirect is used for *permanent* redirections of *existing* pages.
.. seealso::
- `Google documentation on redirects and search <https://developers.google.com/search/docs/crawling-indexing/301-redirects>`_
- :doc:`pages/seo`
.. toctree::
:titlesonly:
pages/menus
pages/seo