Изображения

Модуль работает с изображениями, прикрепленными к элементам других модулей. Модуль состоит из двух частей: подключаемая часть и работа модуля в административной части.

Подключение

Подключаемая часть – файл modules/images /images .inc.php. В нем описан класс Images _inc. В модуле к объекту класса можно обратиться через переменную $this->diafan->_images . Экземпляр класса создается при первом вызове переменной.

Как добавить прикрепленные изображения к модулю

В настройках модуля (modules/модуль/admin/модуль.admin.config.php) и в файле редактирования элементов модуля (modules/модуль/admin/модуль.admin.php) необходимо добавить параметр 'images':

Пример:

public $variables = array(
    
'main' => array(
        
'images' => 'module',
        

    
),
    

);

Размеры изображений

Список размеров изображений

В административной части модуля определяются варианты изображений, которые затем используются в настройках модуля и настройках визуального редактора.

Редактирование размера изображений

Варианты изображений имеют следующие свойства:

Настройки

Настройки изображений задаются в настройках модуля, к которому прикрепляются изображения. Необходимо определить следующие параметры работы модуля:

Использовать изображения – позволяет включить/отключить загрузку изображений.

Генерировать размеры изображений – размеры изображений, заданные в модуле «Изображения» и тег латинскими буквами для подключения изображения на сайте. Обязательно должны быть заданы два размера: превью изображения в списке (тег medium) и полное изображение (тег large). Параметр выводится, если отмечена опция «Использовать изображения».

Отображение изображений в списке – параметр принимает значения:

  • нет (отключает отображение изображений в списке);
  • показывать одно изображение;
  • показывать все изображения.

Использовать изображения для категорий – позволяет включить/отключить загрузку изображений к категориям.

Генерировать размеры изображений для категорий – размеры изображений, заданные в модуле «Изображения» и тег латинскими буквами для подключения изображения на сайте. Обязательно должны быть заданы два размера: превью изображения в списке категорий (тег medium) и полное изображение (тег large). Параметр выводится, если отмечена опция «Использовать изображения для категорий».

Отображение изображений в списке категорий – параметр принимает значения:

  • нет (отключает отображение изображений в списке);
  • показывать одно изображение;
  • показывать все изображения.

Применить настройки ко всем ранее загруженным изображениям – позволяет переконвертировать размер уже загруженных изображений. Кнопка необходима, если изменены настройки размеров изображений. Параметр выводится, если отмечена опция «Использовать изображения».

Использовать анимацию при увеличении изображений – параметр добавляет JavaScript код, позволяющий включить анимацию при увеличении изображений. Параметр выводится, если отмечена опция «Использовать изображения».

Максимальный размер загружаемых файлов – параметр показывает максимально допустимый размер загружаемых файлов, установленный в настройках хостинга. Параметр выводится, если отмечена опция «Использовать изображения».

База данных

{images} – Прикрепленные изображения

{images_editor_folders} – Папки изображений в плагине для визуального редактора

{images_variations} – Варианты загрузки изображений

Файлы

  1. modules/images/admin/images.admin.php – редактирование вариантов генерирования изображений;

  2. modules/images/admin/images.admin.action.php – обработка POST-запросов при работе с изображениями в административной части;

  3. modules/images/admin/images.admin.config.php – настройки модуля;

  4. modules/images/admin/images.admin.inc.php – подключение модуля к административной части других модулей;

  5. modules/images/admin/images.admin.view.php – шаблон вывода изображений в административной части;

  6. modules/images/admin/js/images.admin.config.js – настройки модуля, JS-сценарий;

  7. modules/images/admin/js/images.admin.inc.config.js – подключение модуля к настройкам других модулей, JS-сценарий;

  8. modules/images/admin/js/images.admin.inc.js – подключение модуля к административной части других модулей, JS-сценарий;

  9. modules/images/admin/js/images.admin.js – редактирование вариантов генерирования изображений, JS-сценарий;

  10. modules/images/images.editor.php – плагин для визуального редактора;

  11. modules/images/images.editor.css – плагин для визуального редактора, CSS;

  12. modules/images/images.inc.php – подключение для работы с прикрепленными изображениями;

  13. modules/images/images.install.php – установка модуля;

  14. modules/images/js/images.editor.js – плагин для визуального редактора, JS-сценарий.

Ваши комментарии и дополнения
31 января 2016 г.
У вас нигде не указано что что - бы добавить изображения к модулю надо не только их прописать в admin/example.admin.php и example.admin.config.php
но и в самой админке нужно навести порядок по адресу
/example/config/
Иначе изображения нельзя будет добавлять
=====================================================
Ещё вопрос можно как то сделать чтобы можно было добавлять только одно изображение к статье?
01 февраля 2016 г.
Чтобы загружать можно было только одно изображение, нужно добавить в example.admin.php:
Код
'images' => array(
'type' => 'module',
...
'count' => 1,
),

Как в модуле "Фотогалерея"
02 марта 2021 г. , редакция: 02 марта 2021 г.
Прописали в admin/bs.admin.php и bs.admin.config.php и в самой админке /bs/config/
Но соответствующие папки и сами фото не создаются при загрузке изображения через админку (обработка изображений для баннеров). Из-за чего может быть?
02 марта 2021 г.
Факт прописки адреса загрузки изображений в конфиге не приведет к созданию папки. Модуль лишь будет пытаться туда загрузить. Но сама папка создаётся либо в install модуля при его установке, либо вручную.
21 октября 2022 г.
Спасибо комментариям, стало понятно что добавления нижеследующего кода, мало:

Код
public $variables = array(
'main' => array(
'images' => 'module',

),

);


Пробовал добавить в admin/example.admin.php и example.admin.config.php, (точнее они там уже были т.к. это магазин), но это не помогло вывести загрузку images.

Можно ли получить более подробную инструкцию, типа:
1. сюда добавить такой-то код.
2. сюда добавить сякой-то код.
3. вот здесь создать такую-то директорию.
4. вот там-то прописать вот такой-то конфиг.
5. тут указать вот такую ссылку.
6. а вот здесь, закомментировать вот такую-то подсказку.
7. в базе сделать вот такую-то колонку.

и тогда, точнее только тогда, появится модуль загрузки изображений (при этом текстовые и т.п. поля подключаются без дополнительных хитрых манипуляций). Проблема я так понимаю именно в сложности подключения модуля. Как получить подробную инструкцию?
13 февраля
Подскажите, как можно добавлять дополнительные поля изображений?
Например стандартный служит для фото товаров. А дополнительное поле, за фоновое изображение страницы, а третье доп поле, допустим за какойнибудь специфический вывод. Что бы фотки не к одному полю все грузились, а была возможность как-то кастомизировать работу..
13 февраля
Цитата
Подскажите, как можно добавлять дополнительные поля изображений?
Например стандартный служит для фото товаров. А дополнительное поле, за фоновое изображение страницы, а третье доп поле, допустим за какойнибудь специфический вывод.

Такие задачи нужно решать не модулем изображений, а в рамках любого другого модуля, к которому изображения подключаются.
При подключении изображений создаются варианты
Код
public $variables = array(
'image1' => array(
'images' => 'module',

),
'image2' => array(
'images' => 'module',

),
'image3' => array(
'images' => 'module',

),

);
и далее они уже оформляются как нужно
14 февраля , редакция: 14 февраля
Виталий, действительно форма отправки фото добавилась на странице. Но пробелма осталась. Заливая фотку в любую форму, она видна во всех остальных.
https://disk.yandex.ru/i/EB9Pxz5BI2G36g
Те когда буду выводить фотки на странице, у меня опять будет весь список, который прикреплен к странице.
А мне по факту хочется получать доступ именно к фотке которая подгружена в конкретное поле.

Те нужно что-то на подобии этого https://www.diafan.ru/dokument/full-manual/examples/new-field/

Зарегистрируйтесь или авторизируйтесь для того, чтобы оставить комментарий.