Joomla - управление рендерингом страниц - PullRequest
0 голосов
/ 28 марта 2012

Можно ли отобразить другую страницу вместо обрабатываемой в данный момент?

Например, мой плагин обнаруживает ошибку 404, устанавливает соответствующие заголовки HTTP, а затем выводит обычную страницу с веб-сайта - но под этими заголовками HTTP 404, поэтому браузер и поисковые системы будут получать пользовательские, красивые 404 страницы. 1003 *

Перенаправление по

<? header("Location: ...'); ?>

не вариант. Мне нужно остановить рендеринг текущей страницы и отрисовать другую, но отобразить ее под этим несуществующим URL-адресом.

Как это можно сделать?

1 Ответ

2 голосов
/ 28 марта 2012

Похоже, вам нужен плагин для системных событий, см., В частности,

http://docs.joomla.org/Plugin/Events/System

, метод onAfterDispatch:

http://docs.joomla.org/Plugin/Events/System#onAfterDispatch

Метод onAfterDispatch вызывается после маршрутизации и после того, как Joomla определит, является ли URL действительным, поэтому должно быть время, чтобы принять участие и перенаправить на другую страницу.

...