我担心如何在prestashop 1.7版本的paymentoptions钩子中传递smarty变量,并在支付页面中获取这些变量。
在prestashop 1.7中,paymentoptions钩子看起来像这样,
public function hookPaymentOptions($params)
{
$payment_options = new PaymentOption();
$action_text = $this->l('Pay by Credit Card with Stripe Payment');
/*$payment_options->setLogo(Media::getMediaPath(_PS_MODULE_DIR_.$this->name.'/views/img/card.png'));*/
$payment_options->setCallToActionText($action_text);
$payment_options->setAction($this->context->link->getModuleLink($this->name, 'confirmation', array(), true));
$payment_options->setModuleName($this->name);
$payment_options->setAdditionalInformation($this->context->smarty->fetch('module:stripepay/views/templates/hook/checkout.tpl'));
$payments_options[] = $payment_options;
return $payments_options;
}
在这个钩子里我怎么能传递这个secure_key =" FGDWFGF $#%#%!$" checkout.tpl文件中的值,用于成功付款。
现在我将这些值保持为静态。
请有人知道这一点请协助。
我希望你理解我的问题。
答案 0 :(得分:0)
如果您只是为了以后需要保留它,可能会尝试使用$ _SESSION。 对于checkout.tpl,你应该使用hookPayment($ params)代替它,它意味着填充TPL并且它与旧版本反向兼容:
public function hookPayment($params)
{
$this->context->smarty->assign(array('myvar'=>'thevalue'));
return $this->display(__FILE__, 'checkout.tpl');
}