Чтобы в каждом регионе отображались только склад, привязанный к нему, необходимо передать компоненту каталога список складов, выбранных для региона в настройках.
Для этого:
Перейдите в административную часть сайта.
Перейдите в раздел Контент.
Выберите Файлы и папки.
Выберите catalog.
Войдите в режим редактирования файла index.php как PHP.
В открывшемся окне найдите вызов компонента bitrix:catalog.
Ниже вызова компонента перечислены его параметры. Нужный нам параметр – это STORES. В этот параметр требуется внести изменение, как указано на примерах ниже.
$APPLICATION->IncludeComponent(
"bitrix:catalog",
…
"STORES" => array(
0 => "",
1 => "6",
2 => "",
),
…
После внесения изменений код должен принять вид представленный ниже.
$APPLICATION->IncludeComponent( "bitrix:catalog", … "STORES" => (!empty($_SESSION["SOTBIT_REGIONS"]["STORE"])?$_SESSION["SOTBIT_REGIONS"]["STORE"]:array( 0 => "", 1 => "6", 2 => "", )), …
После такой замены в регионе будет отображаться только то склады, которые указаны в регионе, а если склад для региона не выбран, будет доступен весь их список.