[Release] MailWizz - v1.3.5.9

Not open for further replies.


Staff member
Hi guys,

I am really happy to announce that Mailwizz is now available for download after so much hard work.
You can get it from your Mailwizz Customer Area for now given that CC submission can take several days.

This is a huge release, where a lot of features have been added, some changed and few deprecated, hopefully nothing will break after upgrade, but as always, please, backup your data before upgrading and do this first in a staging environment to see how things work in your case.

IMPORTANT: There are a few sql queries for adding indexes to tables that are possibly very large, say the campaign_delivery_log table for instance which can have few million records.
You really should run the upgrade from the command line (you are prompted to do so from backend once you upload your files).
If you have few million records in database, the upgrade might take a while because adding indexes in mysql is not a fast process, so please wait for it.

As usual, here is the changelog for this release:
--- -------------------------------------------
--- Version - 2015-12-23
--- -------------------------------------------
[ADD] - Added bounce reason/message in the campaign reports for bounces
[ADD] - Added list_import_data_bulk_check_failures filter hook
[ADD] - Added in memory cache for emails blacklist verification and addition
[ADD] - Added update ability for extensions
[ADD] - Added the blocked status for campaigns
[ADD] - Added ability for admins to block campaigns
[ADD] - Added ability to block campaigns if subject/content match various blacklisted words
[ADD] - Added ability to add blacklisted words for campaign subject and content
[ADD] - Added ability to not allow various domain names in the "From email" campaign field
[ADD] - Added ability to whitelist/blacklist access to the API based on the requesting IP address
[ADD] - Ability for customers to add their own custom campaign tags
[ADD] - Added ability to use subscriber custom fields in the list pages
[ADD] - Added ability to import lists from command line
[ADD] - Added ability for command line importer to import the subscribers from any csv/txt file placed in a given folder. Condition is the file name has to be the list uid followed by the .csv or .txt extension
[ADD] - Added ability to export lists from command line
[ADD] - Added controller_action_delete_data action hook in all controllers
[ADD] - Added option to make lists un-removable
[ADD] - Added controller_action_bulk_action action hook
[ADD] - Added ability to export all subscribers at once, from all lists
[ADD] - Added models_lists_after_copy_list filter hook
[ADD] - Added company website to list company fields
[ADD] - Added ability to block a campaign if the bounce rate is over what the admin defines
[ADD] - Added htmlpurifier_adjust_configuration action hook
[ADD] - Added [SUBSCRIBER_IP] tag
[ADD] - Ability to decide if customers can export campaigns stats or not
[ADD] - Ability to view campaigns sent for certain subscriber
[ADD] - Ability to skip tracking domain validation
[ADD] - Ability to optionally track opens
[ADD] - Messaging/Notifications system for customers
[ADD] - Added sending_domain_get_dns_txt_spf_record and sending_domain_get_dns_txt_dkim_record filter hooks
[CHG] - When tracking opens/clicks, the subscriber status is not taken into consideration anymore
[CHG] - Deprecated SendingDomain::DKIM_SELECTOR and SendingDomain::DKIM_FULL_SELECTOR in favor of SendingDomain::getDkimSelector() and SendingDomain::getDkimFullSelector()
[CHG] - Abuse complaints via web forms will automatically unsubscribe the subscriber from the list
[CHG] - Rewrote the entire send-campaigns command for better sendings
[CHG] - Altered the soft-bounce rules to avoid blacklisting for when messages are treated like spam
[CHG] - Email headers are now always in this format: array('name' => 'X', 'value' => 'Y') so that we can allow same header multiple times with diff values.
[CHG] - Deprecated the REDIS QUEUE mechanism. If you were sending via Redis Queue, please go back to regular sending
[CHG] - Deprecated the send-parallel-campaigns command. If you were using it for sending, please go back to regular sending
[CHG] - Removing from blacklist will mark subscribers matching the email addresses as confirmed again
[UPD] - Updated jQcron

Please report any issue you find with this release.
Thank you.
Hi Twisted,

One question about the new un-blacklist feature.

What will happen with the visitors that have been un-blacklisted
with previous versions but still appeared as blacklisted? (before
the new feature was added).

I know that (from what we've chatted in a another thread),
from now on you unblacklist and subscribers are set
to confirmed...but what will happen with those who have been
"unblacklisted" in with a previous version?

For example: I have 400 emails that were blacklisted
because of a wrong setting in elasticemail (bounced).

I've unblackisted them (again with the previous version)...
but i know that they're still blacklisted...

Now i have a mix of legit & not legit blacklisted
people (the 400)...and don't know what to do.

Will this new version do some sort of synchronization
when is activated (example: a SQL to set to "confirmed"
those blacklisted subs who are not in the "Blacklisted"

If not, what can i do to synchronize this?

Thanks a lot,

Last edited:
If not, what can i do to synchronize this?
You can run a sql query from phpmyadmin and clean your blacklist and list subscribers that are blacklisted. Then, when new subs are added into blacklist and you'll remove them from there, status in the list will be also changed.
Hi Twist,

Could you please paste a sql instruction for this?

...Update blacklisted subscribers to confirmed...only if they are not in the list of
"blacklisted" emails.

Thanks a lot,

Last edited:

If someone needs it, here's the code to unblacklist subscribers
that were not un-blacklisted by previous versions of MailWizz
(you don't see them under the blacklist area but still remain
as blacklisted by default).

UPDATE mw_list_subscriber s SET s.status = 'confirmed' WHERE s.status = 'blacklisted' AND NOT EXISTS (
FROM mw_email_blacklist AS b
WHERE s.subscriber_id = b.subscriber_id

Comment: My tables have the prefix "mw_" (yours may have another one).

This code can be executed from PHPMyAdmin.

Although this could not be added to this update, thanks twisted for releasing this new version
and please include this (or similar code) on a new release.

Best Regards,

Last edited:
Thanks for the update. I have a quick question

Deprecated the REDIS QUEUE mechanism. If you were sending via Redis Queue, please go back to regular sending

So we can disable REDIS Queue and under Sending Server Settings USE Queue = NO

Is that right ?

Also I believed there was some plugin for email address validation coming too in this release. Is that still the case or is it delayed for next version ?
Last edited:
I have updated the system. However getting following error. I am not able to create new campaign. When I hit save and next, it says Your Form has few errors.

@Salman Habib - Thanks for reporting. i have fixed this in the download archive for future downloads.
You can download attached file, unzip it and place it in apps/common/models/ to overwrite the existing one ;)
If anything else, please let me know.


Thanks for the update. I have a quick question

Deprecated the REDIS QUEUE mechanism. If you were sending via Redis Queue, please go back to regular sending

So we can disable REDIS Queue and under Sending Server Settings USE Queue = NO

Is that right ?
Yes this is right.

Also I believed there was some plugin for email address validation coming too in this release. Is that still the case or is it delayed for next version ?
There are two already released, see http://codecanyon.net/item/mailwizz-ema-integration-with-bulkemailcheckercom/13933458 and http://codecanyon.net/item/mailwizz-ema-integration-with-kickboxio/13635169
I am getting an error issue with bounce processing. I have checked the bounce email box and there are many emails sitting in there for more than 24 hours. Is there any way to run bounce processing manually for a specific bounce server to check if its working ??
I am getting below error whn i updated to new version..
Warning: include(FilterVarHelper.php): failed to open stream: No such file or directory in /home/admin/web/domain.com/public_html/apps/common/framework/YiiBase.php on line 432

Warning: include(): Failed opening 'FilterVarHelper.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in/home/admin/web/domain.com/public_html/apps/common/framework/YiiBase.php on line 432

Fatal error: Class 'FilterVarHelper' not found in /home/admin/web/domain.com/public_html/apps/common/components/helpers/AppInitHelper.php on line 136

can some1 help me...

After upgrade, I am getting another error whenever I try to send any campaign or verification email for any delivery server.

Internal failure, maybe due to missing functions like proc_open!

Strange thing is function is and was never disabled. Everything was working fine before the upgrade. Can you please look into it.
Here we go with 2 issues after installing this update:

1) (Not Solved): I went to edit a susbcriber (from unconfirmed to confirmed) and get a "Blank Page".

Trying to help: This happens when updating from unconfirmed to confirmed (not viceversa).

I've added a video of this here:

2) (Solved - Works Fine): When preparing a campaign...i went to "Test Template" and got no emails like with past versions (tried +5 times).

Update this item: I've Tested with another recipient and worked fine so this is ok (from now on, i'll check this with different recipients).

If it helps for something i've also installed the .php file (campaign) that was posted here.
Last edited:

1. Edit subscriber is working fine.

When preparing a campaign...i went to "Test Template" and get no emails like with past versions (tried +5 times).

Can you go to Delivery Server and add a new one and test sending Verification email. It will show you the error. I am guessing here that I am also getting same error that is proc_open is missing which was/is never disabled.
Not open for further replies.