Шаблоны вывода

вывод полей

#1 21 марта 2015 в 18:08
Уважаемые профессионалы опять обращаюсь по вопросу о шаблонах вывода контента ни как не могу разобраться с формированием вывода набора объектов из поля в шаблоне,
объясните пожалуйста на примере вывода поля набор изображений в шаблоне
со схемой вывода стандартных полей всё как бы понятно,
#2 21 марта 2015 в 18:20

объясните пожалуйста на примере вывода поля набор изображений в шаблоне

Вячеслав Эст
Данные о фотографиях в базу данных записывается в таком виде
-
размер: путь_к_фото
...
-
размер: путь_к_фото
...

Поле Набор изображения получает эти данные и превращает строку в массив с помощью cmsModel::yamlToArray() потом в переменную $html записывает кусок кода в котором выводиться фотки:
  1. $images = cmsModel::yamlToArray($value);
  2.  
  3. $html = '';
  4.  
  5. foreach($images as $paths){
  6. $html .= '<a class="img-'.$this->getName().'" href="'.$config->upload_host . '/' . $paths[$this->getOption('size_full')].'"><img src="'.$config->upload_host . '/' . $paths['small'].'" border="0" /></a>';
  7. }
  8.  
  9. $html .= '<script>$(document).ready(function() { icms.modal.bindGallery(".img-'.$this->getName().'"); });</script>';
  10.  
  11. return $html;
и передает в шаблон.
#3 21 марта 2015 в 21:26

  1.  
  2. .
  3. .
  4. .
  5. ....return $html;

Evanescence
с формированием вывода примерно понятно, но вот по вывод непосредственно в default.item.tpl.php остаётся не ясным
с одиночным выводом фото просто стандартный шаблон кода вывода поля.
  1.  
  2. <?php if (isset($fields['photo']) && $fields['photo']['is_in_item'] && !empty($item['photo'])){ ?>
  3. <div class="photo">
  4. <a href="<?php echo href_to($ctype['name'], $item['slug'].'.html'); ?>">
  5. <?php echo html_image($item['photo'], 'normal'); ?>
  6. <?php unset($item['photo']); ?>
  7. </a>
  8. </div>
  9. <?php } ?>
  10.  

а вот с выводом ( массива) поля набор изображений к примеру системное имя — photos- не могу понять
#4 21 марта 2015 в 22:33

а вот с выводом ( массива) поля набор изображений к примеру системное имя — photos- не могу понять

Вячеслав Эст
Я точно не знаю, но думаю всё это происходить внутри массива, например откроем файл default_item.tpl.php и там в строке 74
  1. <?php echo $prop_field->parse($props_values[$prop['id']]); ?>
тут берется одна конкретная поля, допустим набор изображении, и передается к функции parse ID поле а там уже файл \system\fields\images.php обрабатывает и возвращает результат
#5 24 марта 2015 в 02:31


  1. <?php echo $prop_field->parse($props_values[$prop['id']]); ?>

Evanescence

мне казалось что эта строка относится к формированию и выводу полей свойств контента и вероятно мне мало поможет для вывода набора изображений
Поясните пожалуйста
#6 3 февраля 2017 в 11:05
тоже возник такой вопрос. не увидел как альт прописывается. или где то еще хук какой это делает? хотел еще один атрибут к картинкам задать, но не нашел где прописать
#7 4 февраля 2017 в 00:52
ребят, есть решение? все перерыл
#8 4 февраля 2017 в 02:28
как я понял, код картинки берется из метода, остается только править этот метод =)
#9 4 февраля 2017 в 10:09
камк я понял, всеже шаблон хранится в хелперах
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.