Odoo 19 Website Guide: Setup, Domain, Navigation, Media and Enquiry Forms
Plan an Odoo 19 service website with verified setup, first-year domain conditions, mobile navigation, media and form troubleshooting.

Applicability
For Odoo 19, subject to the plan, hosting, apps, permissions and provider eligibility described below; not every database has these enabled.
Research method
Research based on Odoo 19 and applicable official policies; no new Odoo operation, payment or messaging tests.
Build around three visitor tasks: find the service, understand its conditions and submit an enquiry. For a Hong Kong service business, a small maintained site can be easier to hand over than a large unfinished one. This guide uses Odoo 19 documentation; no new Odoo product exercise was performed.
Contents
- Start with the configurator and app dependencies
- Free domain eligibility, first year and renewal
- Menus, links and mobile navigation
- Images, video and a mobile fallback
- Form actions and missing-email troubleshooting
- Define a handover result before publication
Start with the configurator and app dependencies
After installing Website, the documented four-step builder asks for purpose, colours or logo, pages/features and theme. You can skip it and start blank. These choices create a starting layout, not verified business promises.
A fictional consultancy can begin with home, services and contact pages, with its main button pointing to an enquiry form. Leave the shop out if there is nothing to sell. One App Free covers the selected app and required dependencies; it does not mean every independent app added later stays free. Check the current plan and installation notice before adding CRM, eCommerce or other features.
Write audience, deliverables, exclusions and contact details before replacing the sample copy. Use images and testimonials you have permission to publish. Publishing frequently does not guarantee search rankings.
Free domain eligibility, first year and renewal
The official offer is for Odoo Online databases: one newly registered domain per client, free for the first year, including eligible One App Free databases. The website needs sufficient original content for review. This is not a free-domain promise for Odoo.sh or self-hosting, and not every desired extension/name is necessarily available.
In the database manager, open the database-name menu and Domain Names. Search availability, enter domain-owner details and register. Use a durable email address and complete verification. Subsequent years use registrar Gandi's renewal rate; renewal follows confirmation of the quotation. A mailbox is not included.
Registration/database mapping and website mapping are separate. In Website → Configuration → Settings, select the correct website, enter its full Domain URL and save. With an existing domain, configure CNAME first and follow the documented database/website mapping order. For the wrong site, check the website selection and Domain. For an unfinished certificate, inspect DNS and the documented validation timing before repeatedly changing settings. Preserve existing email MX records.
Menus, links and mobile navigation
Use Website → Site → Menu Editor, or Edit Menu within the website editor. A service site can start with Services, About and Contact. Give each item an actual page or complete external URL, arrange order and nesting, then save. A menu item being visible does not prove its destination is published.
For body links and buttons, / searches internal pages and # links to an anchor. Keep ordinary internal navigation in the same tab; label external destinations clearly. A button without a meaningful destination is unfinished navigation.
On a narrow screen, check opening and closing the mobile menu, expanding submenus and long translated labels. Move through links with a keyboard and activate them. As a signed-out visitor, confirm destination, language and a usable return route. If a page works only for administrators, inspect publication and visibility rather than renaming the menu.
A mega menu can organize many categories but is unnecessary for a three-page service site; begin with ordinary dropdowns. Update footer contact and policy links separately from the header. Test external URLs, email links and page anchors individually: styling a link as a button does not change its destination.
Images, video and a mobile fallback
Insert/upload images in edit mode and add alternative text in Description. Insert a supported video URL and choose playback controls. Animation can run on scroll, appearance or hover; essential information must not depend on hover on a phone.
An illustrative asset brief for a banner displayed around 1,200 pixels wide is a compressed image near that size rather than an untouched camera original. This is a production suggestion, not a measured performance gain. Check actual mobile crops and preserve readable text and a visible action button.
When video cannot play or a visitor disables autoplay, retain a static cover, text summary and usable link. Save accepted edits; Discard removes unsaved changes. Measure the mobile result before making any seconds-to-load claim.
Blocks support grid/column layouts and background images, video or shapes. Establish readable text and content order before decoration. Use documented block controls for reusable blocks, then replace old company details and links in each use; a saved template is not verified content.
Form actions and missing-email troubleshooting
Drag in a Contact & Forms block, select a field and set Action in the Style tab's Form section. The default sends email. Actions creating opportunities, tickets or tasks depend on installed apps: a form is not automatically a CRM integration.
A fictional service enquiry needs name, contact details, service category and question summary. Set required fields and recipient; for an opportunity action, configure the relevant team and available fields. Choose a success redirect, message or staying on the page. A thank-you page alone proves neither inbox delivery nor correct record assignment.
Troubleshoot in order: action and required app; created record and its owner/team; then email recipient, outgoing-mail evidence and spam folder. For a missing ticket, check Helpdesk installation, action and required-field mapping before blaming email. Collect only information needed for the enquiry and explain its use at the form.
For several forms placed in tabs, verify each action, recipient and success result separately. Match required-field markers to actual Required settings. Conditional field visibility can remove irrelevant questions, but hiding fields is not access control; verify conditional changes on a phone too.
Define a handover result before publication
The handover should name three observable outcomes: a signed-out visitor reaches the service page, a phone user can operate the enquiry route, and a submission maps to the intended record or recipient. These are future acceptance methods, not claims that a form was submitted during this rewrite. For selling rather than an information site, continue to payment and fulfilment decisions.
Sources
- Odoo 19 Website creation
Four-step builder and feature selection.
Source checked
- Odoo 19 Domain names
Odoo Online free-domain eligibility, renewal, DNS and website mapping.
Source checked
- Odoo 19 Headers and footers
Menu editing and header configuration.
Source checked
- Odoo 19 Elements
Links, images, video and animation controls.
Source checked
- Odoo 19 Forms
App-dependent actions, fields and submission success behaviour.
Source checked
- Odoo pricing
One App Free dependencies and plan boundaries; no fixed local price asserted.
Source checked
- Odoo 19 Building blocks
Grid and column layouts, backgrounds, shapes and saving reusable blocks.
Source checked