Magento Newsletter Subscription Confirmation Email Not Sent – How to Fix

emailnewslettertransactional-mail

We set the option that a user needs to confirm their subscription to yes.
In System > Configuration > Newsletter > Need to confirm **(YES)**

That works good, but when a user did confirm his/her email address, they do not receive the Success Email.

How can we send the Succes Email after they confirmed their email address?

Best Answer

Search the file /app/code/core/Mage/Newsletter/Model/Subscriber.php

copy the whole content to

MyVendor/Tweaks/Newsletter/Model/Subscriber.php

Then find the below

public function confirm($code)
    {
        if($this->getCode()==$code) {
            $this->setStatus(self::STATUS_SUBSCRIBED)
                ->setIsStatusChanged(true)
                ->save();
            return true;
        }
        return false;
    }

And replace it with:

public function confirm($code)
    {
        if($this->getCode()==$code) {
            $this->setStatus(self::STATUS_SUBSCRIBED)
                ->setIsStatusChanged(true)
                ->save();

                $this->sendConfirmationSuccessEmail();
            return true;
        }

        return false;
    }