禁止在Magento中运送到除一个商店以外的所有商店中的特定国家/地区

时间:2013-01-15 22:37:14

标签: magento magento-1.7

除了.co.uk商店视图外,我们希望从我们的所有商店视图中禁止向英国发货......

我已根据http://techportal.inviqa.com/2011/06/09/creating-a-custom-magento-shipping-method/http://www.magentocommerce.com/wiki/5_-_modules_and_development/shipping/create-shipping-method-module

上的指南创建了我自己的自定义送货模块

正如您所看到的,在上述两个链接中,都有一个xml块,说明是否允许所有国家/地区或特定国家/地区

<sallowspecific>0</sallowspecific>

以上块的描述如下

sallowspecific  set to 1 to limit the countries the rate is applicable to

我真的可以使用一个例子来说明config.xml应该与sallowspecific设置为1

非常感谢任何输入!

谢谢!

杰夫

2 个答案:

答案 0 :(得分:4)

有一个配置选项可以设置您允许的国家/地区。默认情况下,选择所有国家/地区。您可以将此修改为商店视图级别的最低值以删除英国商店。你可以在这里找到它:

System -> Configuration -> General -> General -> Countries Options -> Allow Countries

如果会出现这样的多个案例,我建议在全球范围内禁用英国和其他任何国家/地区,然后在每个商店/商店视图级别启用所需的国家/地区。这可以帮助您管理大多数商店视图,而无需手动更新每一个商店视图。

答案 1 :(得分:2)

如果用户未在安装后设置模块,则这些代码行将仅设置模块的默认值

<default>
    <carriers>
        <shippingName>
            <sallowspecific>0</sallowspecific>

sallowspecific设置为0时,它会启用您的国家/地区选择器,以便您可以选择要发送到的国家/地区,以便更好地了解此工作如何查看“统一费率”并更改“运往适用国家”的选项,并查看“运往特定国家/地区”的情况。

这是1和0集

 <select id="carriers_flatrate_sallowspecific" name="groups[flatrate][fields][sallowspecific][value]" class="shipping-applicable-country select">
     <option value="0" selected="selected">All Allowed Countries</option>
     <option value="1">Specific Countries</option>
 </select>

如果sallowspecific设置为1,则默认值应为

<default>
    <carriers>
        <shippingName>
            <sallowspecific>0</sallowspecific>
            <specificcountry>US,GB</specificcountry>

在您的system.xml中,您需要

   <sallowspecific translate="label">
        <label>Ship to Applicable Countries</label>
        <frontend_type>select</frontend_type>
        <sort_order>90</sort_order>
        <frontend_class>shipping-applicable-country</frontend_class>
        <source_model>adminhtml/system_config_source_shipping_allspecificcountries</source_model>
        <show_in_default>1</show_in_default>
        <show_in_website>1</show_in_website>
        <show_in_store>1</show_in_store>
    </sallowspecific>
    <specificcountry translate="label">
        <label>Ship to Specific Countries</label>
        <frontend_type>multiselect</frontend_type>
        <sort_order>91</sort_order>
        <source_model>adminhtml/system_config_source_country</source_model>
        <show_in_default>1</show_in_default>
        <show_in_website>1</show_in_website>
        <show_in_store>1</show_in_store>
        <can_be_empty>1</can_be_empty>
    </specificcountry>

然后转到每个商店视图并选择适用的国家/地区。