Magento {{}} dépendent combiné avec {{chemin config = 'some / valeur / ici'}}
-
16-10-2019 - |
Question
nous utilisons le {{}} dépendent des fonctionnalités pour vérifier vrai sur une variable de configuration du système
Mais maintenant, nous courons dans ce qui suit. Puis-je combiner ces balises spéciales {{}} uns dans les autres? Par exemple, si je veux vérifier chemin config = « une valeur / / ici » pour être vrai, ce que je ferais il suit comme?
{{depend {{config path='some/value/here'}}}} text here
Question: Comment puis-je utiliser la dépendent de vérifier une valeur de chemin de configuration
?Et peut-être une deuxième question est: ne dépend chèque de vide, ou faut-il comprendre aussi oui et non de la config de
Merci beaucoup
La solution
Vous ne pouvez pas utiliser {{depend}}
et {{config}}
dans cette combinaison pour 2 raisons.
Le premier et le plus important est que le match regex est vissé comme ça. Si vous avez un texte comme celui-ci {{depend name}} some text {{/depend}}
le tableau matchs se présente comme suit:
Array
(
[0] => Array
(
[0] => {{depend name}} some text {{/depend}}
[1] => name
[2] => some text
)
)
Cela signifie que si la valeur de la variable name
Equivaut à autre chose que null
false
0
la valeur [0] (l'expression) sera remplacée par la valeur de [2] (texte).
Si vous essayez avec {{depend {{config path="some/path/here"}}}} some text {{/depend}}
les résultats ressemblent à ceci:
Array
(
[0] => Array
(
[0] => {{depend {{config path='some/path/here'}}}} some text {{/depend}}
[1] => {{config path='some/path/here'
[2] => }} some text
)
)
La deuxième raison est que le produit doit être dépendent des conditions d'une variable utilisée dans le modèle (élément intérieur de l'élément de _templateVars
).
Le travail autour de cela est de passer la valeur de la config comme une variable au modèle et ensuite utiliser cette variable dans l'instruction depend
.
La prise de Let par exemple le nouvel envoi de courrier électronique de commande. Dans Mage_Sales_Model_Order::sendNewOrderEmail()
$mailer->setTemplateParams(array(
'order' => $this,
'billing' => $this->getBillingAddress(),
'payment_html' => $paymentBlockHtml
)
);
Tourner dans ceci:
$mailer->setTemplateParams(array(
'order' => $this,
'billing' => $this->getBillingAddress(),
'payment_html' => $paymentBlockHtml,
'my_config_var'=> Mage::getStoreConfig('some/path/here')
)
);
Maintenant, vous devriez être en mesure d'utiliser:
{{depend my_custom_var}} some text {{/depend}}