У меня есть класс CommentaryServiceImpl, который должен взаимодействовать с классом UserServiceBitrix, который реализует интерфейс UserService. Простой способ избежать прямой зависимости, это кинуть реализацию через конструктор, но придется постоянно этим заниматься. Есть ли аналог аннотации @Autowired, и как ее использовать на своих классах? В документации отыскал только это: https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=21162
Выражу в коде свои желания:
Код
// settings.php
return [
'AutowireAlias' => [ 'UserService' => 'UserServiceBitrix' ]
];
// commentaryserviceimpl.php
class CommentaryServiceImpl {
/** @Autowired */
protected UserService $userService; // При создании CommentaryServiceImpl здесь будет UserServiceBitrix
}
Для выявления элемента сделал в гугле запрос вида "site:domain.ru inurl:PAGEN_2", и перешел на страницу сохраненную в кеше гугла, и по местоположению <a href="?PAGEN_2"> в коде выявил кто генерирует ссылки. Виноват был элемент определения местоположения, если местоположения не удалось определить, то он выдавал список регионов с пагинацией.
СЕО анализатор сайта показал что со страницы блога site.com/blog/page0 тянется множество страниц вида site.com/blog/232?PAGEN_2=123, что является ошибкой. Гугл тоже предлагает перейти на site.com/blog/232page0?PAGEN_2=532.
Я посмотрел header.php, footer.php, саму страницу, и компонентов с пагинацией там не нашел, ссылок на следующую, предыдущую страницу на самой странице тоже нет. Что же это могло бы быть?
Можно как то узнать кто получает и генерирует PAGEN_2?