Макросы Битрикс
Нужно вывести блок именно через макрос
CWizardUtil::ReplaceMacros(
$_SERVER["DOCUMENT_ROOT"]."/index.php",
Array(
"BLOCK" => '<div> ... </div>',
)
);
Если использовать ReplaceMacros работает только на странице index, можно ли как-то сделать сразу для всех страниц, не дублируя этот метод для каждой страницы? И при таком способе не работает, если в инфоблоке в одном из свойств(html/text) попытаться написать #BLOCK# и вывести в news.list (указывала такой путь /local/templates/site/components/bitrix/news.list/services/template.php) если в самом template.php написать #BLOCK# то этот блок отображается
Ответы (1 шт):
Автор решения: Екатерина
→ Ссылка
В init.php или в нужном файле добавить обработчик
<?AddEventHandler("main", "OnEndBufferContent", "ChangeMyContent");
function ChangeMyContent(&$content)
{
$content = str_replace('#BLOCK#','<div> ....</div>', $content);
}?>
И можно использовать #BLOCK#