В MODX, чтобы сделать исключение в 404 странице, можно воспользоваться двумя подходами.
Первый подход - использование плагина. Создайте новый плагин и выберите событие "OnPageNotFound". Далее, в коде плагина, вы можете определить условие, при котором будет срабатывать исключение. Например, если в URL содержится определенное слово или текст, вы можете перенаправить пользователя на другую страницу, используя функцию $modx->sendRedirect(). Вот пример кода плагина:
<?php if ($modx->event->name == 'OnPageNotFound') { $requestUri = $_SERVER['REQUEST_URI']; if (strpos($requestUri, 'исключаемый-текст') !== false) { $modx->sendRedirect('/новая-страница', array('response' => '404')); } }
Второй подход - использование .htaccess. Добавьте следующий код в ваш .htaccess файл для создания исключения:
ErrorDocument 404 /index.php?request=404
Далее, в index.php
, вы можете проверить параметр "request" и выполнить необходимые действия. Вот пример кода, который перенаправляет пользователя на другую страницу, если в URL содержится определенное слово или текст:
<?php $request = isset($_REQUEST['request']) ? $_REQUEST['request'] : ''; if ($request == '404') { $requestUri = $_SERVER['REQUEST_URI']; if (strpos($requestUri, 'исключаемый-текст') !== false) { header('Location: /новая-страница', true, 301); exit; } }
Оба подхода позволяют создавать исключения в 404 странице в MODX, в зависимости от ваших конкретных требований и предпочтений. Выберите подход, который лучше всего соответствует вашим потребностям.