Коллеги, давно мечтаю о такой вещи: есть чанк , который содержит код для подключения какой нибудь компоненты сайта, например галереи. Назовем его [[$gallery]]. Чанк содержит подключения сторонних CSS и JS, также свой код CSS и JS. И какую то HTML разметку. Если с JS в чанке проблем нет, то CSS теги нужно вставлять в голову.
Можно ли распарсить чанк и отправлять части кода с помощью $modx->regClient...() в соответствующие части страницы. Например, ниже код чанка:
<!-- CSS -->
<link rel="stylesheet" href="css/blueimp-gallery.min.css">
<style>
.blueimp-gallery {
/* кастомизируем */
}
</style>
<!-- JS -->
<script src="js/blueimp-gallery.min.js"></script>
<script>
blueimp.Gallery(
document.getElementById('links').getElementsByTagName('a'),
{
container: '#blueimp-gallery-carousel',
carousel: true
}
);
</script>
<!-- HTML -->
<div id="blueimp-gallery" class="blueimp-gallery">
<div class="slides"></div>
<h3 class="title"></h3>
<a class="prev">‹</a>
<a class="next">›</a>
<a class="close">×</a>
<a class="play-pause"></a>
<ol class="indicator"></ol>
</div>
В идеале, при вызове чанка, отправить код между <!-- CSS --> и <!-- JS --> в голову $modx->regClientStartupHTMLBlock()
отправить код между <!-- JS --> и <!-- HTML --> вниз страницы $modx->regClientHTMLBlock();
Но не могу понять, как распарсить чанк...