Overslaan naar inhoud

Het Website.Page Model: Inzicht in Odoo's Website Pagina Architectuur

Een complete gids voor het websitepagina-model van Odoo voor ontwikkelaars en functionele consultants
11 maart 2026 in
Het Website.Page Model: Inzicht in Odoo's Website Pagina Architectuur
Dasolo
| Nog geen reacties

Inleiding


In Odoo definiëren modellen hoe gegevens zijn gestructureerd en opgeslagen in de database. Elk stuk bedrijfsdata waarmee u werkt, leeft in een model.


Het begrijpen van Odoo-modellen is essentieel voor zowel ontwikkelaars als functionele consultants. Modellen zijn de basis van de Odoo-gegevensarchitectuur. Ze definiëren Odoo-velden, relaties en bedrijfslogica.


Dit artikel richt zich op het website.page model. Het ondersteunt statische pagina's op uw Odoo-website. Of u nu aangepaste landingspagina's bouwt, inhoud beheert of integreert met externe systemen, u zult met dit model werken.

Wat is het website.page Model


Het website.page-model vertegenwoordigt statische webpagina's in Odoo. Het maakt deel uit van de Website-app en slaat pagina's op die je handmatig aanmaakt, zoals Over Ons, Contact of aangepaste landingspagina's.


Dit model in Odoo maakt gebruik van Odoo-modelovererving. Het erft van ir.ui.view via de _inherits-mechanisme. Elk website.page-record is gekoppeld aan een ir.ui.view die de QWeb-sjabloon (arch) en metadata bevat.

Dynamische pagina's, zoals de winkel of bloglijst, worden op een andere manier gegenereerd.


Ze worden niet opgeslagen als website.page-records. Het website.page-model is specifiek voor statische inhoud die je aanmaakt en bewerkt via de websitebouwer.

Belangrijke Velden in het Model


Hier zijn de belangrijkste Odoo-velden in het website.page-model. Het begrijpen hiervan zal je helpen om effectief met webpagina's te werken.


1. naam

Type: Char. Dit veld slaat de paginatitel op. Het wordt weergegeven in het browsertabblad, in menu's en in zoekresultaten. Het komt van de gekoppelde ir.ui.view.


2. url

Type: Char. Het URL-pad van de pagina. Het moet beginnen met een schuine streep. Voorbeelden: /contactus, /about-us. Dit is het pad dat bezoekers gebruiken om toegang te krijgen tot de pagina.


3. view_id

Type: Many2one (ir.ui.view). Vereist. Verbindt met de QWeb-weergave die de pagina-inhoud bevat. De weergave bevat de arch (XML-sjabloon) en sleutel. Het verwijderen van de weergave heeft gevolgen voor de pagina.


4. website_id

Type: Many2one (website). De website waartoe deze pagina behoort. In multi-website setups kunnen pagina's specifiek zijn voor één website of gedeeld (wanneer leeg).


5. is_published

Type: Boolean. Of de pagina zichtbaar is voor bezoekers. Ongepubliceerde pagina's geven 404 terug of leiden om. Gebruik dit om pagina's te verbergen zonder ze te verwijderen.


6. website_indexed

Type: Boolean. Beheert of zoekmachines de pagina kunnen indexeren. Stel in op False voor bedankpagina's of interne pagina's die je niet in zoekresultaten wilt hebben.


7. date_publish

Type: Datetime. De publicatiedatum. Gebruikt voor geplande publicatie en voor het weergeven wanneer de inhoud live ging.


8. header_visible

Type: Boolean. Of de website-header op deze pagina moet worden weergegeven. Handig voor landingspagina's of full-screen ervaringen waar je de header wilt verbergen.


9. footer_visible

Type: Boolean. Of de website-footer moet worden weergegeven. Net als header_visible, laat dit je pagina's creëren zonder de standaard footer.


10. is_homepage

Type: Boolean. Computed field. Waar deze pagina is ingesteld als de homepage van de website. Slechts één pagina per website kan de homepage zijn.


11. is_visible

Type: Boolean. Computed. Geeft aan of de pagina zichtbaar is op basis van publicatiestatus, datum en zichtbaarheidregels.


12. menu_ids

Type: One2many (website.menu). De menu-items die naar deze pagina linken. Een pagina kan in meerdere menu's of in geen enkele verschijnen.


13. create_date

Type: Datetime. Wanneer het record is aangemaakt. Automatisch beheerd door Odoo. Nuttig voor auditing en rapportage.


14. write_date

Type: Datetime. Wanneer het record voor het laatst is gewijzigd. Ook automatisch beheerd. Helpt bij het volgen van inhoudsupdates.


15. arch

Type: Text. De QWeb XML-sjabloon. Opgeslagen op de gekoppelde ir.ui.view. Bevat de HTML-structuur en Odoo-snippets. Bewerkbaar via de websitebouwer.


16. key

Type: Char. Unieke identificator voor de weergave. Gebruikt in module XML en voor overerving. Het formaat is meestal module.view_name.


17. type

Type: Selectie. Het type weergave. Voor webpagina's is dit altijd qweb. Andere types zijn formulier, lijst en boom.


18. actief

Type: Boolean. Soft delete-vlag. Wanneer False, wordt het record gearchiveerd. Komt van ir.ui.view. Gearchiveerde pagina's worden niet weergegeven.


19. website_meta_title

Type: Char. SEO meta titel. Overschrijft de standaardtitel in zoekresultaten. Belangrijk voor SEO-zichtbaarheid.


20. website_meta_description

Type: Tekst. SEO meta beschrijving. De snippet die wordt weergegeven in zoekmachine resultaten. Houd het tussen 150 en 160 tekens voor de beste weergave.


21. website_meta_keywords

Type: Char. Meta zoekwoorden. Minder belangrijk voor moderne SEO, maar nog steeds gebruikt door sommige systemen. Komma-gescheiden.


22. header_overlay

Type: Boolean. Of de header de inhoud overlayt. Gebruikt voor hero-stijl pagina's waar de header bovenop de banner zit.


23. header_color

Type: Selectie. Kleurenschema van de header. Opties zoals transparant, licht of donker. Beïnvloedt contrast en leesbaarheid.


24. zichtbaarheid

Type: Selectie. Toegangscontrole. Opties zijn Publiek, Aangemeld, Beperkte Groep of Met Wachtwoord. Beheert wie de pagina kan bekijken.


25. redirect_type

Type: Selectie. Wanneer de URL verandert, definieert dit de omleiding: 301 permanent, 302 tijdelijk of geen. Belangrijk voor SEO bij het verplaatsen van pagina's.

Hoe Dit Model Wordt Gebruikt in Bedrijfsworkflows


1. Landingspagina's en Campagnes

Marketingteams creëren landingspagina's voor campagnes. Elke pagina is een website.page record. Ze beheren URL, inhoud en publicatiedatum. Geplande publicatie gebruikt date_publish.


2. Bedrijfspagina's

Over Ons, Contact, Algemene Voorwaarden en Privacybeleid zijn typisch website.page records. Ze worden eenmaal aangemaakt en indien nodig bijgewerkt. Menuplaatsing wordt beheerd via menu_ids.


3. Bedank- en Bevestigingspagina's

Pagina's zoals "Contactformulier verzonden" of "Taak ontvangen" zijn website.page records. Stel website_indexed in op False zodat ze niet in zoekresultaten verschijnen.


4. Meerdere Websites en Lokalisatie

In opstellingen met meerdere websites bepaalt website_id welke site de pagina toont. Je kunt pagina's per website dupliceren met gelokaliseerde inhoud.


5. Gated Content en Beperkte Toegang

Het zichtbaarheidveld stelt je in staat om pagina's te maken voor alleen ingelogde gebruikers, of voor specifieke groepen. Handig voor ledengebieden of interne documentatie.

Hoe Ontwikkelaars Dit Model Uitbreiden


Ontwikkelaars breiden website.page uit met verschillende patronen. Odoo modelovererving is het belangrijkste mechanisme.


Modelovererving

Gebruik _inherit = 'website.page' om het model uit te breiden. Voeg nieuwe Odoo-velden toe, overschrijf methoden of voeg beperkingen toe. Het erfmodel in Odoo houdt je wijzigingen in een aparte module voor gemakkelijke upgrades.


Velden Toevoegen

Definieer nieuwe Odoo-velden in je geërfde model. Gebruik het juiste veldtype: Char, Many2one, Boolean, Integer, Text, Selection. Overweeg website-afhankelijke velden voor meerdere websites.


Python Uitbreidingen

Overschrijf create, write, of unlink om logica toe te voegen. Gebruik super() om de originele aanroep te doen. Wees voorzichtig met de view_id-relatie en cascadegedrag.


Odoo Studio

Odoo Studio stelt je in staat om pagina's aan te passen zonder code. Goed voor snelle lay-outwijzigingen. Voor complexe logica of API-gedreven inhoud zijn aangepaste modules beter onderhoudbaar.

Beste Praktijken


  • Gebruik URL-vriendelijke slugs. Vermijd spaties en speciale tekens. Gebruik koppeltekens voor leesbaarheid.
  • Stel website_indexed in op False voor bedankpagina's, bevestigingspagina's en interne pagina's.
  • Bij het wijzigen van URL's, schakel omleiding (301 of 302) in om de SEO-waarde te behouden en gebroken links te vermijden.
  • Vul website_meta_title en website_meta_description in voor elke openbare pagina. Dit verbetert de SEO-zichtbaarheid.
  • Bij het maken van pagina's via API of XML-RPC, maak eerst de ir.ui.view, dan de website.page met view_id. Zorg ervoor dat de weergave type qweb heeft en een unieke sleutel.

Veelvoorkomende Fouten


  • Een website.page maken zonder een geldige view_id. De weergave moet bestaan en type qweb hebben.
  • Gebruik maken van URL's die niet met een schuine streep beginnen. Odoo verwacht paden zoals /contactus, niet contactus.
  • Vergeten website_indexed in te stellen op bedankpagina's. Ze eindigen in zoekresultaten en kunnen SEO verdunnen.
  • Een pagina-URL wijzigen zonder een omleiding in te stellen. Oude links breken en zoekmachines verliezen de verbinding.
  • De arch van een weergave wijzigen die in de websitebouwer is bewerkt. De noupdate-vlag in ir.model.data kan voorkomen dat je XML-wijzigingen worden toegepast. Reset deze indien nodig.

Conclusie


Het website.page-model is centraal voor het beheer van statische pagina's in Odoo. Het slaat paginametadata, URL's en publicatie-instellingen op. De daadwerkelijke inhoud bevindt zich in de gekoppelde ir.ui.view.


Het begrijpen van de velden en hoe het erft van ir.ui.view zal je helpen om Odoo-websites effectief te configureren, aan te passen en te integreren. Of je nu een functionele consultant of een ontwikkelaar bent, een goed begrip van website.page zal tijd besparen en fouten voorkomen.

Hulp Nodig Bij Uw Odoo Implementatie?


Dasolo helpt bedrijven bij het implementeren, aanpassen en optimaliseren van Odoo. We zijn gespecialiseerd in API-integraties en Odoo-ontwikkeling. Ons team heeft diepgaande ervaring met de Odoo-gegevensarchitectuur en modellen zoals website.page.


Als je hulp nodig hebt bij je Odoo-implementatie, aangepaste webpagina's of integraties, zijn we hier om te helpen. Boek een demo om je project te bespreken.

Het Website.Page Model: Inzicht in Odoo's Website Pagina Architectuur
Dasolo 11 maart 2026
Deel deze post
Aanmelden om een reactie achter te laten