0

billing_fields.phtml中有

<?php
$billingFields['country_id'] = '
<div class="input-box input-country'.((in_array('country', $formErrors)) ? ' input-error' : '').'">
    <label for="billing:country_id">'.$this->__('Country').' <span class="required">*</span></label><br />
        '.$this->getCountryHtmlSelect('billing').'
</div>';
?>

我确实只有一个国家,并且带有呈现下拉列表的选择标签$this->getCountryHtmlSelect('billing')对用户不友好,因为它没有更多选项。我觉得它具有误导性和过时性。我的问题是:

如何更改上面的代码以在简单(不可编辑)输入字段中显示我的默认国家/地区?

编辑我在 CBroes getCountryCollection提示 后想出了这个

<?php
$countryCollection = $this->getCountryCollection();
foreach($countryCollection as $country) {
    $country_id = $country['country_id'];
    $countryName = Mage::getModel('directory/country')->load($country_id)->getName();
    $billingFields['country_id'] = '
    <div class="input-box input-country'.((in_array('country', $formErrors)) ? ' input-error' : '').'">
        <label for="billing:country_id">'.$this->__('Country').' </label><br />
            <input type="text" name="billing[country_id]" id="billing:country_id" class="input-text" value="'.$countryName.'" style="width: 83%" readonly="readonly" />
    </div>';
}
?>

前端看起来不错。甚至后端也能识别给定的值。不幸的是,电子邮件没有。那里的国家字段仍然是空的。

我错过了什么或者如何使这个输入合法,以便 magento 电子邮件接受它的值?

4

0 回答 0