Задавайте свои вопросы и отвечайте на вопросы других участников форума
Для определения города по ip подойдут стандартные средства битрикс
Цитата
use \Bitrix\Main\Service\GeoIp; GeoIp\Manager::useCookieToStoreInfo(true); $ipAddress = GeoIp\Manager::getRealIp(); $result = GeoIp\Manager::getDataResult($ipAddress, "ru"); $getLocationId = \Bitrix\Sale\Location\GeoIp::getLocationId($ipAddress, "ru"); $getLocationCode = \Bitrix\Sale\Location\GeoIp::getLocationCode($ipAddress, "ru");Если есть название города, можно использовать следующий функционал для определения кода местоположения
\Bitrix\Main\Loader::includeModule('sale');
$ol["city"] = "Москва";
$result = array();
$res = \Bitrix\Sale\Location\LocationTable::getList(array(
'filter' => array(
'=NAME.NAME_UPPER' => ToUpper($ol["city"]),
'=NAME.LANGUAGE_ID' => "ru"
),
'select' => array('ID', 'CODE')
));
if($loc = $res->fetch())
$resultCity = $loc;
}
$getLocationCode = $resultCity['CODE'];
$getLocationId = $resultCity['ID'];