Trung Tran
Trung Tran

Reputation: 299

How can I inherit and modify "website.layout" template for a specific page in Odoo without affect the whole site?

I want to create a new checkout/payment template which has a different layout than the whole site. For example, it has a header navigation bar with the logo in the center, a centered fullwidth checkout wizard, etc... The problem is, I want to reuse the "website.layout" template so that I can use other built-in features of Odoo.

Currently, I achieve that by creating a new template inside my module based on "web.layout" instead of "website.layout". But it doesn't feel right to me. Because I can't, as I said above, use built-in features of Odoo such a site builder, web editor, ... I wonder if there are any ways to replace the built-in header and footer inside <t t-call.. block.

Upvotes: 2

Views: 1796

Answers (1)

Thayif kabir
Thayif kabir

Reputation: 726

Try to replace header and footer using xpath expression and add your code inside that xpath expression for custom header and footer. please refer this link for example

<template id="web_external_layout_inherited" 
      inherit_id="web.external_layout_standard" customize_show="True">
<xpath expr="//div[@class='header']" position="replace">
       your code.
</xpath></template>

you can also add custom header and footer in qweb.

Upvotes: 1

Related Questions