L'édition de Magento ventes e-mail blocage du paiement
app\locale\en_US\template\email\sales\order_new.html
est le fichier en question.
Comment peut-on aller sur la modification de {{var payment_html}} sans affecter les autres sections du site?
Il semble que l'article vient de: app\design\frontend\base\default\template\payment\info\default.phtml
Suis-je corriger cela? Mais ce fichier est utilisé dans d'autres endroits sur le site. N'est-ce pas trop?
Je veux créer un fichier séparé, dire default_email.phtml
, style séparément, et ont order_new.phtml inclure le nouveau fichier à la place.
Je suppose que j'ai besoin de mes default_email.phtml
fichier dans layout\***.xml
. Où puis-je faire?
OriginalL'auteur djdy | 2011-07-29
Vous devez vous connecter pour publier un commentaire.
La première chose que je fis fut d'une recherche dans le code source de Magento. En supposant que le
{{var payment_html}}
est traitée quelque part, j'ai cherché surpayment_html
.Plusieurs résultats correspondant à la recherche;
De sorte que l'information pour que le paiement d'un bloc d'être là. J'ai pris
Mage_Sales_Model_Order
et vérifié la variable$paymentBlockHtml
. Cela est souligné plus logique pour remplir le blocage du paiement par les informations de paiement. C'est la création d'un bloc et il semble que ce n'est pas facile à étendre/modifier/modifier le premier coup d'oeil.Oui, nous pouvons appliquer un modèle spécifique (paiement) type de bloc, puisqu'il y a un bloc créé, mais nous ne pouvons pas vérifier facilement qui bloquent l'on veut charger. Aussi le modèle est rejetée dans la construction de
Mage_Payment_Block_Info
Nous allons vérifier dans l'autre sens.
Nous allons faire quelque chose de cool, pourquoi nous n'avons pas d'ajouter un bloc à l'e-mail qui contient les informations correctes, mais le plus important où il est possible de faire un interrupteur pour la bonne cause. Depuis le modèle de l'analyseur est utilisé pour l'analyse des variables et la mise en page des poignées de nous pourrions ajouter le suivant sur la place de la
{{var payment_html}}
bloc et de récupérer les informations dans le bloc lui-même.Le code ci-dessus est l'analyse de l'e-mail/templatename.phtml dans l'e-mail, ce qui signifie que vous pourriez faire quelque chose dans ce modèle pour afficher les données correctes.
Avant que nous puissions récupérer les données de paiement dans ce modèle, nous devons ajouter la commande argument avec les données de la commande. C'est assez simple;
Dans le modèle que nous pouvons faire
$this->getOrder()->getPayment()
pour récupérer les informations de paiement, ou$this->getOrder->getPayment()->toHtml()
ou traiter les données d'une autre manière.Bonus;
Une autre solution est de travailler avec mise en page et poignées de définir le bon modèle et le type dans le layout.xml, ci-dessous un exemple pour l'ordre des éléments dans le même e-mail. Il fonctionne de la même que le bloc, mais seulement avec certains paramètres dans la mise en page xml.
OriginalL'auteur Jeffrey de Graaf
/App/code/core/Mage/Sales/Model/Order.php il existe une méthode appelée "sendNewOrderEmail". C'est ce que vous avez besoin d'affecter. Vous trouverez le code simmilar à la suivante:
Vous pouvez voir que c'est là que le "payment_html" données est défini. Juste en échange de ce que vous voulez qu'il soit.
OriginalL'auteur Mike D
J'ai eu le même problème. Ce que j'ai fait pour changer seulement le courriel a été ajouter les éléments suivants à des informations sur le paiement de la classe.
Alors créer le modèle et l'e-mail sera insérer ce modèle dans la section de paiement si ce mode de paiement est utilisé.
Espère que c'est utile!
OriginalL'auteur Roy Toledo