Managing themes in Odoo can often feel like a two-edged sword; while they offer a way to customize your website’s look and feel, the installation, update, or even removal process isn't always straightforward. You may find that certain themes just won't uninstall the conventional way, leaving you stuck with a design you may no longer want or need.
But worry not, there’s a simpler way to take control of your Odoo themes—by utilizing the Apps module within the platform. The Apps module allows you to manage not just business applications but also themes, streamlining the installation, update, and removal process. This blog will guide you step-by-step through using the Apps module to easily manage your Odoo themes, helping you avoid common pitfalls and frustrations.
When you install the website menu you are asked to select a theme you want to use for you website. But how do you change your theme at a later stage? How do you update your custom theme after you made changes? If you go to 'Settings' > 'Website' you can configure your theme for your website.
If you click on the 'Pick a Theme' button you will see an overview of all your themes. Here you can select a new theme, update an existing one, or even remove a theme.
However, some themes also include, for example, custom models. Even if you remove the theme from your addons folder, it is still visible in the themes menu. How would you remove such a theme? If you go the App overview, you'll notice that the themes are not listed. By default Odoo excludes themes from the App overview. In order to list all themes you have to update the domain value. Make sure you have developer mode activated.
If you click on the 'Edit Action' item you can update the domain so that the themes will be visible in the Apps overview.
The domain value is set to ['!', ('name', '=like', 'theme_%')]
which means that all themes are excluded from the App overview. If you remove this line, search for 'Theme', all themes should be visible and you can install/update/remove them. If you are working on a custom theme, you can also use this shortcut to quickly update your theme whenever you made changes to your custom theme.
Pro Tip
You can also use the Odoo command line to install/update/remove themes. This is especially helpful if you're developing a custom theme and you need to make regular updates. You can use the Odoo command line on your server like this:
odoo -d database_name -u theme_name --stop-after-init
When you are running Odoo in a Docker container you can use:
docker exec -it container_name odoo -d database_name -u theme_name --stop-after-init
That's it!! As you can see, all themes are visible now and you can install/update/remove them just as you would do with any other module. I hope you enjoyed this blog post.