2011-01-31 11 views
0

私はmagentoランショップでギフトカードを購入したときに受信者に送信されたギフトカード通知に付随するイメージをユーザーが選択できるようにするカスタムユーティリティタスクを持っていました。テンプレートには、使用可能な変数があり、送信される電子メールをカスタマイズすることができます。しかし、正しいイメージを追加するには、ギフトカードのsku番号にアクセスする必要があります。これは、多くのギフトカードを作成してそれぞれに個別のイメージを適用した後、javascriptを使用してsku番号ユーザーが画像をクリックすると十分に簡単です。アプリ/コード/コア/エンタープライズ/ギフトカード/モデル/ Observer.phpファイルでトランザクションメールテンプレートでmagentoギフトカードSKUにアクセスする方法を知っていますか?

は、変数が設定されています

   $templateData = array(
        'name'     => $item->getProductOptionByCode('giftcard_recipient_name'), 
        'email'     => $item->getProductOptionByCode('giftcard_recipient_email'), 
        'sender_name_with_email' => $sender, 
        'sender_name'   => $senderName, 
        'gift_message'   => $item->getProductOptionByCode('giftcard_message'), 
        'giftcards'    => $codeList->toHtml(), 
        'balance'    => $balance, 
        'is_multiple_codes'  => 1 < $goodCodes, 
        'store'     => $order->getStore(), 
        'store_name'    => $order->getStore()->getName(), // @deprecated after 1.4.0.0-beta1 
        'is_redeemable'   => $isRedeemable, 
       ); 

だから私はこの配列に製品のSKUを追加することができ、それが利用可能になりますテンプレートシステムで問題は、私はSkuを取得する方法を知るためにこれを追跡する場所を知らない。私はそれが何らかの形で$ item varにあると仮定していますが、magentoにはこの特定のケースに関するドキュメントはなく、テストする方法がないので推測できません。電子メールスクリプトは、カードを購入したときに有効になるので、「テストを送信」ボタンをクリックして、ユーザーに送信される電子メールの内容を確認することはできません。プレビューボタンは変数を閉じます。

誰でもこれについて知っていますか?おそらく$ item-> getSku()のようなもの

入力が助けになります。 ありがとう

答えて

1

このスニペットは、sales_order_save_afterイベントのハンドラとして登録されているEnterprise_GiftCard_Model_Observer::generateGiftCardAccounts()メソッドのものです。そのイベントには、「新しい注文受付」の電子メールと同じ「注文」オブジェクトが渡されます。あなたは、その電子メールテンプレートを変更し、管理者の注文ページから再送信して新しい電子メールをトリガーすることで、試すことができます。

$item->getSku()はほぼ確実です。

+0

ありがとうございました。私はそれを調べます。それが生きている変更であるので私はテストするために少量を費やさなければならないと思う。過去には、払い戻しのシステムが常に同期していなかったので、これは高価でした。何とかこの苦難の頃に払い戻さなければなりません。決して少なくない、私が注文履歴から再送し続けることができるなら、それはすばらしい。 –

+0

ご注文のために十分な長さの無料製品を作成してください。それをnoneに設定し、管理者に追加します。無料であれば、「ゼロ金額」の支払い方法を使用して、自分の費用を避けることができます。 – clockworkgeek

+0

うん。 $ item-> getSku()はあなたが言及したように働きました。 0ドルのアイテムはなかった。私はカートに0ドルの商品を追加できませんでした。だから私はちょうど私のギフトカードmin $ 0.25を作った。私はギフトカードの通知を再送信する方法を見つけることができませんでしたので、私はそれを2回しなければなりませんでした。幸運になりました。正しいバランスを見つける前に何度も何回もすることができます。 –

関連する問題