Мне нужно загрузить двухзначный идентификатор страны ISO2 для данного названия страны.Magento - получить идентификатор страны от имени - есть ли более простой/быстрый способ?
Прямо сейчас, я использую следующий метод, чтобы сделать это:
// Method to Get countryId from CountryName
function getCountryId($countryName) {
$countryId = '';
$countryCollection = Mage::getModel('directory/country')->getCollection();
foreach ($countryCollection as $country) {
if ($countryName == $country->getName()) {
$countryId = $country->getCountryId();
break;
}
}
$countryCollection = null;
return $countryId;
}
Использование:
var_dump(getCountryId('Germany'));
Выходы:
string(2) "DE"
Существует ли проще/быстрее способ сделать это вместо того, чтобы загружать сборку страны и проходить через нее каждый раз?
К сожалению, каталог/страна-модель содержит только метод loadByCode, а не loadByName. Вы можете реализовать такой метод самостоятельно, но поскольку у вас уже есть рабочее решение, это может быть просто излишним. –