Iskander

Iskander

С нами с 27 января 2023; Место в рейтинге пользователей: #6606
Iskander
31 января 2023, 12:59
0
Вот решение, спасибо за помощь Степану Гончарову
<?php
switch ($modx->event->name) {
	case 'OnHandleRequest':
		if ($_SERVER['HTTP_HOST'] != 'site.ru' && $modx->context->key === 'web') {
			$_res = $modx->getObject('modResource', ['alias' => explode('.', basename($_REQUEST['q']))['0']]);
			if (is_object($_res) && $_res != 'null') {
				$_ids = $modx->getParentIds($_res->get('id'));
				$_ids = array_reverse($_ids);
				if(isset($_ids['1']) && intval($_ids['1']) == 54) {
					$modx->sendRedirect($modx->getOption('seodomains_main_host').$modx->makeUrl($_res->get('id')), array('responseCode' => 'HTTP/1.1 301 Moved Permanently'));
				}

			}
		}
	break;
}
— Где в строке if ($_SERVER['HTTP_HOST'] != 'site.ru' && $modx->context->key === 'web') {
site.ru ваш основной домен ставьте

— В строке if(isset($_ids['1']) && intval($_ids['1']) == 54) {
54 — ID раздела со статьями.

OnHandleRequest — событие нужно включить для плагина
Iskander
27 января 2023, 21:23
0
Здравствуйте!
Подскажите пожалуйста, использую SeoDomains и есть пара вопросов.

1. Как бороться с дублями страниц статей и раздела статей на поддоменах, если на сайте не стоят вложенные URL?
2. Есть ли возможность, чтобы при клике на статью или раздел статей на поддоменах, они открывался в новом окне (target="_blank") и на основном домене?