Определить поселение Есть решение
Плагин вызывается при срабатывании хука. Есть-ли какой-то специальный метод, чтобы определить домен и поселение? Планирую просто плагин с разными настройками для разных поселений…
Разобрать самостоятельно URL, получить список поселений приложения, перебрать его я могу. Но, можеет, есть уже какой-то готовый метод? :)
3 ответа
$routing = wa()->getRouting();
$domain = $routing->getDomain();
$settlement = $routing->getRoute('url');
Два поселения у shop:
test/*
sub.test/shop/*
Надо определить, к какому поселению относится url test/cart/
увы, ни $wa()->getRouting->getRoute('test/cart'), ни $wa()->getRouting->getRoute('http://test/cart'), ни $wa()->getRouting->getRoute('http://test/cart/') не работает.
Похоже, таки придется $wa()->getRouting->getByApp('shop'), найти домен и перебирать роуты — может же быть у домена быть несколько поселений магазина, в принципе-то... :-/
$route = wa()->getRouting()->getRoute();
$route - это будет массив поселения приложения из wa-config/routing.php
$route['url'] в первом случае будет 'test/*', во втором случае 'sub.test/shop/*'.
wa()->getRouting()->getRoute('url') - это тот же $route['url'], только без создания дополнительной переменной.