1

注文が保留になったときにカスタマイズされた電子メールを送信する Mageneto 1.4 をインストールしています。それはすべて完全に機能しますが、英語のメールのみを送信します. 英語とドイツ語のストアから注文が入った場合でも、英語のメールが送信されます。

現在使用している holdAction メソッドは次のようになります。

public function holdAction()
{
    if ($order = $this->_initOrder()) {
        try {
            $order->hold()
                ->save();
            $this->_getSession()->addSuccess(
                $this->__('Order was successfully put on hold.')
            );
            $emailTemplate  = Mage::getModel('core/email_template')
                    ->loadDefault('customer_payment_declined');
            $emailTemplateVariables = array();
            $emailTemplateVariables['order'] = $order;
            $emailTemplateVariables['customername'] = $order->getCustomerName();
            $processedTemplate = $emailTemplate->getProcessedTemplate($emailTemplateVariables);
            $emailTemplate->setSenderName('example.com');
            $emailTemplate->setSenderEmail('customerservice@example.com');
            $emailTemplate->setTemplateSubject('Your order – '.$order->getIncrementId());
            $emailTemplate->send($order->getCustomerEmail(),$order->getCustomerName(), $emailTemplateVariables);

        }
        catch (Mage_Core_Exception $e) {
            $this->_getSession()->addError($e->getMessage());
        }
        catch (Exception $e) {
            $this->_getSession()->addError($this->__('Order was not put on hold.'));
        }
        $this->_redirect('*/sales_order/view', array('order_id' => $order->getId()));
    }
}

さまざまな方法でロケールを通過させようとしましたが、運がありません。

助言がありますか?

4

1 に答える 1

0

さまざまな言語のさまざまな電子メールテンプレートは、当社のWebサイトの1つでうまく機能します。これもMagentov.1.4です

私たちが持っているのは、2セットのロケールです:
app / locale / nl_NL / template / email /
app / locale / en_US / template / email /

また、次のWebサイトスコープごとに異なるロケールが設定されています:
[構成]->[一般]->[ロケールオプション]

于 2012-11-29T16:59:38.257 に答える