2011-01-31 3 views
0

나는 magento 실행 상점에서 기프트 카드를 구입할 때받는 사람에게 보내는 기프트 카드 고지에 동봉 할 이미지를 선택할 수있는 사용자 지정 유틸리티 작업을 가지고있었습니다. 템플릿에는 사용할 수있는 다양한 변수가 있으므로 보낼 전자 메일을 사용자 지정할 수 있습니다. 그러나 올바른 이미지를 추가하려면이 방법을 사용하는 방법이 단순히 많은 선물 카드를 만들고 각각에 대해 별도의 이미지를 적용한 다음 자바 스크립트를 사용하여 sku 번호를 바꿔야하므로 기프트 카드 sku 번호에 액세스해야합니다. 사용자가 이미지를 클릭하면 충분히 간단합니다.거래 전자 메일 템플릿에서 magento gift card 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를 추가 할 수 있으며 사용할 것 : 응용 프로그램/코드/코어/기업/Giftcard입니다은/모델/Observer.php 파일에서

는 변수가 설정됩니다 템플릿 시스템에서 문제는 Sku를 얻는 방법을 알기 위해 어디를 추적해야할지 모르겠다. 어떻게 든 $ 항목 var에서 사용할 수 있다고 가정하지만 magento는이 특별한 경우에 대한 문서가 없으며 테스트 할 방법이 없으므로 추측 할 수 없습니다. 전자 메일 스크립트는 카드를 구입할 때 활성화되므로 "테스트 보내기"버튼을 클릭하여 사용자에게 보낸 전자 메일의 내용을 볼 수 없습니다. 미리보기 버튼은 변수를 닫습니다.

누구든지이 문제에 대해 알고 계십니까? $ item-> getSku()와 같을 수도 있습니다.

입력이 도움이됩니다. 감사합니다

답변

1

해당 스 니펫은 sales_order_save_after 이벤트의 처리기로 등록 된 Enterprise_GiftCard_Model_Observer::generateGiftCardAccounts() 메서드의 코드 조각입니다. 이 이벤트에는 "주문한 새 주문"이메일과 동일한 '주문'개체가 전달됩니다. 이메일 템플릿을 변경하고 관리자의 주문 페이지에서 다시 보내 새 이메일을 보내서 실험 해 볼 수 있습니다.

$item->getSku()은 거의 확실합니다.

+0

감사합니다. 나는 그것을 들여다 볼 것이다. 그것이 살아있는 변경이기 때문에 나는 시험 할 약간의 금액을 소비해야 할 것이라고 생각한다. 과거에는 환불 시스템이 항상 일치하지 않았기 때문에 비용이 많이 들었습니다. 어떻게 든 환불을 위해이 시련을 겪어야합니다. 결코 더 적은 것, 나가 주문 역사에서 재발송 할 수있는 경우에 저것은 굉장하다. –

+0

주문할 수있을만큼 무료 제품을 만드십시오. 아무에게도 보이지 않게 설정하고 관리자를 통해 추가하십시오. 무료 인 경우 "Zero Amount"지불 방법을 사용하여 비용을 피할 수 있습니다. – clockworkgeek

+0

예. $ item-> getSku()는 언급 한대로 작동합니다. 제로 달러 항목은 비록하지 않았다. 장바구니에 0 달러짜리 항목을 추가 할 수 없었습니다. 그래서 나는 기프트 카드를 최소 $ .25로 만들었습니다. 그래도 기프트 카드 알림을 다시 보낼 수있는 방법을 찾지 못해서 두 번해야했습니다. 운이 좋았어. 때로는 적절한 균형을 찾기 전에 여러 번 반복 될 수 있습니다. –

관련 문제