Drupal 7 商务模块计费国家/地区基于用户选择


Drupal 7 commerce module billing country selection based on user

我在使用 Drupal 7 商务模块时遇到问题。

我们在主页上有一个国家/地区下拉菜单,用户可以选择任何国家/地区继续购物。

进入商业计费部分后,当前默认国家/地区显示为加拿大。我在这里要做的是基于主页国家/地区选择,我必须在计费部分中为国家/地区下拉列表设置相同的值。请谁知道我该如何实现这一点?

我是Drupal的新手

同样类型的问题可以在这里找到 https://drupal.stackexchange.com/questions/120858/prepopulating-county-state-field-ajax-driven-field

你不能找回主页上选择的这个国家吗?也许它出现在网址上,您可以使用current_path来获取它?在主页上选择时如何处理?

编辑:如果您可以在任何地方访问它,那么您可能可以在自定义模块中使用hook_widget_form_alter,如下所示:

function YOUR_MODULE_field_widget_form_alter(&$element, &$form_state, $context) {
    $element['#address']['country'] = 'US';
}

将"YOUR_MODULE"替换为模块名称。并通过用户所在国家/地区的 ISO 更改"US"。您可能还应该在form_id上添加一个条件语句,以仅在结帐表单上应用此更改。我希望它有效!