我是prestashop的新手,我需要知道是否有办法(通过代码)我可以根据客户邮政编码限制可用的支付网关数量。例如,让我们说从纽约购买的任何人只能通过PayPal付款,但美国其他城市可以使用任何支付网关。
我尝试了这个,但它为所有人禁用了模块,而不是特定客户端:
if (strcmp($postcode, "12345")) // postcode I want to restrict
{
// disabling other payment modules
$modules = PaymentModuleCore::getInstalledPaymentModules();
foreach ($modules as $module)
{
// fetch all installed module names
$name = $module['name'];
if (strcmp($name, "Paypal") != 0)
Module::getInstanceByName($name)->disable();
}
}
答案 0 :(得分:1)
没有人回答,我已经用Jquery解决了这个问题,删除了模块中的其他选项.tpl
- 编辑 -
在模板的最后,我添加了这行JS:
<script type="text/javascript">
$(".payment_module").not(".mypaymentmodule").remove();
</script>