Получение Magento для отправки электронной почты при получении платежа

Я не верю, что у Magento есть готовый метод отправки электронного письма, чтобы сообщить владельцу о получении платежа, так есть ли способ, которым это можно запрограммировать?

Пока я прочиталэтот но похоже, что он может быть более сфокусирован на отправке электронной почты клиенту, а не поставщику; а такжеэтот но кроме того, что он был полностью потерян (как это звучит как ОП), один человек сказал, что принятый ответ немного устарел, а также я не уверен, что это то, что мне нужно в любом случае.

Ответы на вопрос(1)

Решение Вопроса

По сути, вам нужен (удивительно) модуль наблюдателя, чтобы сделать именно это. Кроме того, это совершенно та же работав одной из предоставленных вами ссылок.

Чтобы сделать модуль наблюдателя barebones, вам нужно всего три файла:

/app/etc/modules/Electricjesus_Notifyowner.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Electricjesus_Notifyowner>
            <active>true</active>
            <codePool>local</codePool>
        </Electricjesus_Notifyowner >
    </modules>
</config>

/app/code/local/Electricjesus/Notifyowner/etc/config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Electricjesus_Notifyowner>
                <version>0.1.0</version>
        </Electricjesus_Notifyowner>
    </modules>
    <global>
        <models>
            <notifyowner>
                <class>Electricjesus_Notifyowner_Model</class>
            </notifyowner>
        </models>          
        <events>
                <sales_order_payment_pay>
                    <observers>
                        <notifyOwnerEvent>
                                <class>notifyowner/observer</class>
                                <method>notifyOwnerEvent</method>
                        </notifyOwnerEvent>
                    </observers>
                </sales_order_payment_pay >     
        </events>
     </global>
</config>

/app/code/local/Electricjesus/Notifyowner/Model/Observer.php

<?php
class Electricjesus_Notifyowner_Model_Observer
{
    public function notifyOwnerEvent($observer)
    {

        // parameters you can get from the $observer parameter:
        // array(’payment’ ? $this, ‘invoice’ ? $invoice)

        $payment = $observer->getPayment();
        $invoice = $observer->getInvoice();

        // derivative data
        $order = $invoice->getOrder(); // Mage_Sales_Model_Order

        $ownerEmail = '[email protected]';
        /*
             - build data
             - build email structure
             - send email via any php mailer method you want
        */
        return $this;  // always return $this.
    }

}

Вы также можете использовать другие события вместоsales_order_payment_pay (см. config.xml). Увидетьэтот список для неполного списка событий вместе с их параметрами. И наэтот документ Это некоторые методы для проверки / получения актуального списка событий с их параметрами.

Я рекомендую использовать Zend_Mail, чтобы делать ваши письма внутри наблюдателя. Ничего особенного, я просто склонен к вещам Zend.

http://framework.zend.com/manual/en/zend.mail.html

--- РЕДАКТИРОВАТЬ

Если вы хотите, чтобы готовое расширение сделало это (и даже больше), и если вы не против заплатить за него, вы можете взглянуть на:

http://www.magentocommerce.com/magento-connect/admin-email-notifications.html

 29 мая 2012 г., 22:02
отредактировал мой ответ в ответ на это
 byronyasgur29 мая 2012 г., 13:29
Спасибо, я бы сказал, что превращение обозревателя barebones в рабочий фрагмент рабочего кода может занять немало времени, за которое мой клиент, возможно, не захочет платить. Знаете ли вы, есть ли плагин, доступный, поскольку я бы не хотел заново изобретать колесо.

Ваш ответ на вопрос