Make a quick vote 🗳 ️How do you refer to SuiteCRM extensions: add-ons or plug-ins? Click here to have your say 👈

Version 7.12.2 - Email template builder images disapear

When uploading an image into a template and saving it, the template is saved without the image.

Thinking about how an image would move from this cached location to a permanent location, The server side would need to know about these images so I expect that there is a mechanism that registers these images so that when the template is saved, these pictures would be moved and their references updated at the same time. My thought is that this mechanism (if it exists) is not working correctly. The template editor allows for the source code to be viewed and changed. I expected that updating the source code might trigger the aforementioned image register mechanism and so just viewing or pasting in the source code verbatim would be enough. It turned out that I may be either correct or on the right path of thought as viewing the source code and faking updating it is enough to get the uploaded pictures into the long term storage location.

I have not verified my thoughts and still do not fully understand the implementation of the template editor and all the above is best guess.


This used to work fine, but there is now a function that cleans any html field and this function removes the link to the image.

There is an issue in GitHub: email templates: Mozaik removes images · Issue #9265 · salesagility/SuiteCRM · GitHub
But, even though it is marked as important, it has not yet been fixed.

I have the same issue, I am using suitecrm helm chart, since the default installation that run with 1001 user would have problem on all scheduler (crontab), so I run it in root mode, and change own to daemon owner. however, whenever, I upload with template image with Mozaik, it disappeared, same as your problem. The image is uploaded to ‘upload’ while the link is ‘public’.
I future out in source code /modules/EmailTemplates/EmailTemplateFormBase.php line 213, it will try to create a directory ‘public’ and copy the file there. for some reason, the folder is missing and will not created automatically. We just need to create the directory with correct ownership. And then the problem is fixed.