メールテンプレートをデバッグする方法


8

メールテンプレートの変更に取り組んでいます。 {themeName}/template/email/order/items/order/default.phtml

上記のテンプレートは、ユーザー(guestまたはcustomer)が注文したときにトリガーされます。

上記のテンプレートには、次のような変数があります。

$_item = $this->getItem();
$_order = $this->getItem()->getOrder(); 

Mage::logまたはなどのデバッグ方法を使用するzend_debug::dumpと、チェックアウトページがハングアップし、注文が処理されません。

それで、私の質問は、ここで電子メールテンプレートをデバッグするために何を使用する必要があるかです。

またecho、常に空の文字列を表示するかarray、変数を保持する配列に使用しました。


上記の変数からorder_idを取得する方法を誰かに少なくとも教えてもらえますか?
Mr_Green 2014

Mage::logブロッククラス(Mage_Sales_Block_Order_Email_Items_Order_Default)で使用しようとしましたか?
nevvermind 2014

@nevvermind試してみMage::logましたMage_Sales_Block_Items_Abstract。私の投稿で前述したのと同じ問題があります。あなたの言及されたクラスとは関係がありませんでした。
Mr_Green 2014

メールtplはapp/locale/en_US/template/email/sales/order_new_guest.html(ゲスト用)にあります。そこで、レイアウトハンドルが挿入されます- sales_email_order_items。このハンドルはで宣言されていapp/design/frontend/base/default/layout/sales.xmlます。あなたが問題を抱えているテンプレートは、ブロックのセットがあるsales/order_email_items_order_default別名を- Mage_Sales_Block_Order_Email_Items_Order_Default
nevvermind 2014

@nevvermind情報をありがとう。実は、私はからのメールへの製品のhtmlを取得しています{themeName}/template/email/order/items/order/default.phtml私はそれを徹底的にチェックする)のような電子メールの他の部分、あなたが上記したものから来ている「何とか何とか何とかは...お買い上げいただきましてありがとうございます」(私はチェックしませんでしたが、私はそう思う)。率直に言って、私はこの問題を解決しましたが、私の質問はこれらの電子メールテンプレートでデバッグする方法ですか?
Mr_Green 2014

回答:



2

また、Mage::log($your_object->debug());これを試すことで、必要な情報が得られると期待しています。

すべてのオブジェクトデータをキー=>値の配列として表示し、オブジェクトであるサブデータのクラスを表示します。

if (is_scalar($value)) {
    $debug[$key] = $value;
} elseif (is_array($value)) {
    $debug[$key] = $this->debug($value, $objects);
} elseif ($value instanceof Varien_Object) {
    $debug[$key.' ('.get_class($value).')'] = $value->debug(null, $objects);
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.