Стоимость 10 000 руб.
Вставляем в init.php
$cities = array(
array(
'id' => 0,
'name' => 'Казань',
'r' => 'Казани',
'd' => 'Казани',
'v' => 'Казань',
't' => 'Казанью',
'p' => 'Казани',
'extra' => 'в Казани',
'linkdomain' => 'omicronkzn.com',
'address' => 'ул. Зинина,1',
),
array(
'id' => 1,
'name' => 'Самара',
'r' => 'Самары',
'd' => 'Самаре',
'v' => 'Самару',
't' => 'Самарой',
'p' => 'Самаре',
'extra' => 'в Самаре',
'linkdomain' => 'samara.omicronkzn.com',
'address' => 'ул. Зинина,1',
)
);
$reversedURI = $URI;
// Найти город по текущему домену
$currentcitydata = array_values(array_filter($cities, function($city) {
return $city['linkdomain'] == $_SERVER['SERVER_NAME'];
}));
if (!empty($currentcitydata)) {
$currentcitydata = $currentcitydata[0];
$currentcity = $currentcitydata['name'];
$currentlink = 'https://' . $currentcitydata['linkdomain'] . '/';
}
// Регистрация шорткодов в Bitrix
AddEventHandler("main", "OnBeforeProlog", "RegisterShortcodes");
function RegisterShortcodes() {
AddEventHandler("main", "OnEndBufferContent", "ReplaceShortcodes");
}
function ReplaceShortcodes(&$content) {
global $currentcitydata;
if (!empty($currentcitydata)) {
$shortcodes = array(
'{CITY_NAME}' => $currentcitydata['name'],
'{CITY_R}' => $currentcitydata['r'],
'{CITY_D}' => $currentcitydata['d'],
'{CITY_V}' => $currentcitydata['v'],
'{CITY_T}' => $currentcitydata['t'],
'{CITY_P}' => $currentcitydata['p'],
'{CITY_EXTRA}' => $currentcitydata['extra'],
'{CITY_ADDRESS}' => $currentcitydata['address'],
'{CITY_LINK}' => 'https://' . $currentcitydata['linkdomain'] . '/',
);
// Заменяем шорткоды в контенте
foreach ($shortcodes as $shortcode => $replacement) {
$content = str_replace($shortcode, $replacement, $content);
}
}
}
Текcтовые шорткоды:
{CITY_NAME}
{CITY_R}
{CITY_D}
{CITY_V}
{CITY_T}
{CITY_P}
{CITY_EXTRA}
{CITY_ADDRESS}
{CITY_LINK}
Кодовые
$currentcitydata['name']
$currentcitydata['r']
$currentcitydata['d']
$currentcitydata['v']
$currentcitydata['p']
$currentcitydata['extra']
$currentcitydata['linkdomain']
$currentcitydata['address']