Замена видимого контента при загрузке страницы

  • 1 Ответов
  • 73 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

Psixodelik

  • Новичок
  • *
  • 2
  • 0
Добрый день. Возникла следующая проблема:

Необходимо на поддоменах сайта делать автоматические замены (например замена города в метатегах и контенте). В Joomla до версии 3 я это делал таким образом в корневом index.php
Код
$app->render();

include $_SERVER["DOCUMENT_ROOT"]."/regions.php";
$app = changeWords($app);

echo $app;

Где changeWords — функция в которой происходят замены.

В Joomla 3 за вывод теперь отвечает такой код
Код
JDEBUG ? JProfiler::getInstance('Application')->setStart($startTime, $startMem)->mark('afterLoad') : null;
$app = JFactory::getApplication('site');
$app->execute();

Как теперь подобраться к выводу контента и сделать необходимые замены? Насколько я понимаю, мне нужно как-то воспользоваться событием onAfterRender и произвести все замены, но почему-то пока никак это не получается. Забрать весь вывод я могу с помощью getBody, но вот как это сделать до вывода на страницу?

*

Psixodelik

  • Новичок
  • *
  • 2
  • 0
Проблему решил сам. Вдруг кому понадобится:
Код
ob_start();
$app->execute();
$content = ob_get_contents();
ob_get_clean();

include $_SERVER["DOCUMENT_ROOT"]."/regions.php";
$content = replace_region($content);
echo $content;