Автор Тема: Добавление загрузки изображений к информационным страницам Prestashop 1.7  (Прочитано 851 раз)

27 Ноябрь 2018, 22:49:30
  • Пользователь
  • **
  • Сообщений: 92
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Не так давно начал разрабатывать на Prestashop 1.7.

Возникла необходимость добавить изображение к информационным страницам.

В AdminCmsController добавил такой код:
    $image = _PS_CAT_IMG_DIR_.$this->object->id.'_1.'.$this->imageType;
$image_url = ImageManager::thumbnail($image, $this->table.'_'.(int)$this->object->id.'.'.$this->imageType, 350, $this->imageType, true, true);

$image_size = file_exists($image) ? filesize($image) / 1000 : false;

    $this->fields_form['input'][] = array(
                    'type' => 'file',
                    'label' => $this->trans('Изображение склада 1', array(), 'Admin.Catalog.Feature'),
                    'name' => 'image_1',
                    'display_image' => true,
                    'image' => $image_url ? $image_url : false,
                    'size' => $image_size,
                    'delete_url' => self::$currentIndex.'&'.$this->identifier.'='.$this->_category->id.'&token='.$this->token.'&deleteImage=1',
                   'hint' => $this->trans('This is the main image for your category, displayed in the category page. The category description will overlap this image and appear in its top-left corner.', array(), 'Admin.Catalog.Help')
                );

В файл CMS.php  добавил
public $image_1;

...
'image_1' =>   array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isString', 'size' => 3999999999999),

Поле отображается, выбираю картинку нажимаю сохранить страницу.
Пишет что страница успешно сохранена, но при редактировании страницы картинка не отображается, наверно и не сохраняется.

Не нашел таблицу где хранятся пути к изображениям.
Заметил что названия картинок формируются из псевдонима размера(например home_default) и id товара или категории.
Я правильно, понимаю что пути картинок в базе действительно не хранятся?

Помогите доделать загрузку изображений к странице prestashop 1.7
27 Ноябрь 2018, 23:06:08
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В prestashop в классе Link есть метод getImageLink($name, $ids, $type = null).
Но он для изображений товаров.

ImageManager::thumbnail
для создания миниатюр

27 Ноябрь 2018, 23:10:07
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
28 Ноябрь 2018, 12:15:35
Ответ #3
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
28 Ноябрь 2018, 12:19:52
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 132
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль Custom form / field on cms page установите и можете добавить любое поле к страницам.