我可以得到这样的国家:
$countryCollection = Mage::getModel('directory/country')->getResourceCollection()->loadByStore();
它们列在对象的某个位置,但是,我如何toOptionsArray
将它们列出来?
我只关注每个网站的选项而不是完整列表,即。我想要安哥拉,南极洲等等。 (对不起安哥拉人和企鹅。)
答案 0 :(得分:17)
其实是明显的答案:
$countryList = Mage::getModel('directory/country')->getResourceCollection()
->loadByStore()
->toOptionArray(true);
还可以查看http://fishpig.co.uk/magento-tutorials/list-countries-for-drop-down-in-magento,了解有关使用国家/地区列表创建下拉列表的更多信息。
答案 1 :(得分:0)
<?php
$_countries = Mage::getResourceModel('directory/country_collection')
->loadData()
->toOptionArray(false);
$allowed = Mage::getStoreConfig('general/country/allow');
if (count($_countries) > 0) { ?>
<div class="input-box">
<select name="country" id="country" class="validate-select" title="Country" >
<option value="">-- Please Select --</option>
<?php foreach($_countries as $_country){
if(!in_array($_country['value'],explode(',',$allowed))){
continue;
} ?>
<option value="<?php echo $_country['value']; ?>" <?php echo $formData['country'] == $_country['value'] ? ' selected="selected"' : '';?>>
<?php echo $_country['label'] ?>
</option>
<?php
} ?>
</select>
<?php } ?>