Skip to main content

Force a mail layout on selected email templates

Project description

Odoo Community Association

Mail Layout Force

Beta License: AGPL-3 OCA/mail Translate me on Weblate Try me on Runboat

Odoo will add a default email layout on most commercial communications.

The email layout is a QWeb view that ends up wrapping the message body when sending an email. It usually displays the related document reference, the company logo, and a small footer saying “Powered by Odoo”.

There are notably three main layouts used in Odoo, and the user can’t control when they’re used, as it’s hardcoded into the different applications.

  • mail.mail_notification_layout

  • mail.mail_notification_layout_with_responsible_signature

  • mail.mail_notification_light

This module allows to force a specific layout for a given email.template, effectively overwriting the one hardcoded by Odoo. Additionally, it enables forcing a custom layout for emails that do not use an existing email.template record (e.g., when sending an email from the chatter).

This allows you to fully customize the way Odoo emails are rendered and sent to your customers.

Table of contents

Configuration

To configure a forced layout for email templates:

  1. Go to Settings > Technical > Email > Email Templates

  2. Open the desired email.template record

  3. In the Settings tab, find the Force Layout field

You can leave it empty to use the default email layout (chosen by Odoo). You can force a custom email layout of your own. You can use the Mail: No-Layout notification template to prevent Odoo from adding a layout.

To configure a custom layout of your own, some technical knowledge is needed. You can see how the existing layouts are defined for details or inspiration:

  • mail.mail_notification_layout

  • mail.mail_notification_layout_with_responsible_signature

  • mail.mail_notification_light

To force a custom layout for emails that do not use an existing email.template record (e.g., emails sent from the chatter) or for cases where emails are sent directly via message_post without opening the mail composer (e.g., invoice send actions like action_invoice_sent), you can use the Layout Mapping feature:

  1. Go to Settings > Technical > User Interface > Views

  2. Copy the current layout (e.g., mail.mail_notification_layout_with_responsible_signature) to create a new custom layout, and customize it as needed

  3. Open the original layout view that you want to replace. Under the Layout Mapping tab:

    • Click Add a line

    • Set Substitute Layout to the new custom layout you created

    • Set Models if you want to apply the replacement only to specific models. If left empty, the email layout will be replaced for all models

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Camptocamp

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainer:

ivantodorovich

This module is part of the OCA/mail project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file odoo_addon_mail_layout_force-18.0.1.0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for odoo_addon_mail_layout_force-18.0.1.0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 61985e9d5ba934451d6e7645dc1a4fb0fc3be1dd55d0981eaebac5542554e8ba
MD5 d47078a16699fe478a36d83f181c61f1
BLAKE2b-256 bf8eb9b6e007c05b328fc3c425313e275bdbcd3b6b18785eaea3b8634195fbb9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page