Как вывести фото, загруженное в опциях виджета в шаблон виджета?

#1 10 февраля 2021 в 01:16
Нигде не могу найти решение, как вывести фото, загруженное в опциях виджета в шаблон виджета?

Например: в опциях виджета задаем:

  1. <?php
  2.  
  3. class formWidgetMywidgetOptions extends cmsForm{
  4.  
  5. public function init() {
  6. return array(
  7.  
  8. 'type' => 'fieldset',
  9. 'title' => 'Опции',
  10. 'childs' => array(
  11.  
  12.  
  13. new fieldImage('options:back_img', array(
  14. 'title' => LANG_WD_BACK_IMG,
  15. 'options' => array(
  16. 'sizes' => array('original')
  17. )
  18. )),
  19. )
  20. )
  21. );
  22. }
  23.  
  24. }
в widget.php делаю так:

  1. <?php
  2.  
  3. class widgetMywidget extends cmsWidget {
  4.  
  5.  
  6. public $is_cacheable = false;
  7. public function run() {
  8.  
  9. $this->setWrapper('wrapper_plain');
  10.  
  11.  
  12. $back_img = $this->getOption('back_img');
  13.  
  14. return array(
  15.  
  16. 'back_img' => $back_img
  17.  
  18. );
  19.  
  20. }
  21.  
  22. }
В сомом шаблоне виджета пробовал разными путями — не выводит( Хотя, если заменить поле изображение на String и указать в настройках виджета в админке любую информацию в нем, а в файле шаблона виджета вывести:

<?php echo $string ?> то всё выводится нормально. Подскажите, как вывести изображение в виджете
#2 10 февраля 2021 в 04:04
В $back_img у вас Array ( [original] => урл/до/картинки.гиф )
и чтоб картинку показать в шаблоне то
<?php echo html_image($back_img, 'original', true) ?>
#3 10 февраля 2021 в 07:31
Tolya, да, это работает. А как получить с поля back_img только ссылку на загруженное изображение?
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.