我需要在 Prestashop 1.5 中将一个类别限制为一组国家/地区。此限制将阻止运输属于此类的产品;因此,用户仍然可以看到产品,但无法购买。
理想情况下,我想开发一个模块,在类别的编辑页面中插入国家列表(复选框样式,如模块 -> 支付页面 (AdminPayment)),但我无法这样做。
为什么我不能简单地将以下代码粘贴到 renderForm() 函数中?如果我这样做,只有描述是可见的......
array(
'items' =>Country::getCountries(Context::getContext()->language->id),
'title' => $this->l('Country restrictions'),
'desc' => $this->l('Please mark the checkbox(es) for the country or countries for which you want to block the shipping.'),
'name_id' => 'country',
'identifier' => 'id_country',
'icon' => 'world',
),
编辑: 我设法让国家名单工作:
array(
'type' => 'checkbox',
'label' => $this->l('Restricted Countries').':',
'class' => 'sel_country',
'name' => 'restricted_countries',
'values' => array(
'query' => Country::getCountries(Context::getContext()->language->id),
'id' => 'id_country',
'name' => 'name'
),
'desc' => $this->l('Mark all the countries you want to block the selling to. The restrictions will always be applied to every subcategory as well')
),
现在,我可以通过检查是否在 postProcess 函数中提交了值“submitAddcategory”并在那里运行插入查询来保存这些值。同样,我也可以从数据库中加载被封锁国家的 ID,但是如何在国家列表中勾选相应的选择框?
我最初的“快速而肮脏”的想法是在 document.ready() 中使用 jQuery 选择器,但是代码会在其他所有内容之前插入,因此它不会工作,因为 jQuery 甚至还没有加载。
如何才能做到这一点?
干杯