Например, хочу на странице или в виджете выводить поле image в своей собственной html обертке или вовсе без нее. Желательно, не затрагивая файлы в папке system.
Надо внимательней смотреть документацию (:
Например, хочу на странице или в виджете выводить поле image в своей собственной html обертке или вовсе без нее. Желательно, не затрагивая файлы в папке system.
Надо внимательней смотреть документацию (:
Bersi82, есть еще ряд способов. Мне нравится вносить такие правки через шаблон списка или записи типа контента.
Например, делаем для типа контента news копию файла templates/ваш_шаблон/content/default_item.tpl.php и называем его news_item.tpl.php
В этом файле есть примерно такая конструкция
<?php foreach ($fieldset['fields'] as $field) {
и дальше идет перебор полей, которые надо показать. Мы можем вмешаться в этот перебор, например, так
<?php //фото if($field['name'] == 'photo'){//если системное имя поля photo $src = html_image_src($item['photo'], $fields['photo']['options']['size_full'], true); //получим ссылку на фото, воспользовавшись исходными данными из базы, которые находятся в массиве $item //и выведем кроме фото, это же фото фоном, с размытием ?> <div class="content_item_photo mb-3" style="background-image: url(<?php echo $src; ?>)"><?php echo $field['html']; ?></div> <?php continue; } ?>
Просто как пример. Такой файл почти не нуждается в обновлении при выходе новых версий icms. А измененный helper придется актуализировать.
После закрытия тикета github.com/instantsoft/icms2/issues/1306 на гите использовать данный способ для нескольких типов контента станет еще удобнее.