ImgsPaste - дружелюбная вставка фотографий из ms2Gallery, MIGX в контент

Встречайте новый пакет и мое первое творение в виде платного пакета для modx — ImgsPaste v1!
** Поддержка MIGX и ms2Gallery в редакторах TinyMCE Rich Text Editor и CKEditor
Позволяет простым образом вставлять в контент статьи из MIGX галереи фотографию как тег или набор фотографий в оформленном, размеченном html виде (в неограниченном количестве и местах), к которому можно самому добавить слайдер, «увеличивалку» ну и все что посчитаете нужным.
Не делал из коробки подключение js библиотек, т.к. большинство людей пользуются разными решениями — нет смысла тащить лишнее.
Этот инструмент необходим каждому контент менеджеру или владельцу сайта.

Посмотрите возможности тут: Обзор установки, настройка, использования в виде gif анимации.

Поддерживается на данный момент редактор TinyMCE Rich Text Editor 2.0.0+ и CKEditor 1.4.0 (если его нет, то дополнение вы сможете установить, но пользоваться плагином не получится.) и MIGX 2.10.0+ пакет с настроенной галереей или ms2Gallery.
Другие пакеты пока не поддерживаются. Если Вас заинтересовала поддержка иных редакторов – дайте обратную связь в топике, добавлю быстрее.
В планах поддержка Gallery, msGallery(который в минишопе). Маякните если нужно ускоряться с поддержкой этих дополнений или других.

Быстрая пошаговая настройка:
1. Вы установили Все необходимые дополнения (migx, TinyMCE RTE 2.0, и создали TVшку с конфигурацией MIGX. Допустим имя TV gallery, а поле для картинки в конфиге image. Эти имена по умолчанию вбиты в настройки.
2. Добавьте новый плагин в настройках tinymcerteIpasteMigx и пропишите в тулбаре его:
— Добавьте плагин IPasteMigx в поле tinymcerte.plugins
— Добавьте вывод кнопки в любой из 3х тулбаров, например пропишите IPasteMigx во второй tinymcerte.toolbar2.
2.1 ** Для ms2Gallery Добавьте плагин IPasteMs2g в поле tinymcerte.plugins и пропишите его в тулбаре.
— minishop2 Gallery — IPasteMsg необходимо прописать
2.2. Для CKEditor: впишите нужные плагины в поле настройки: ckeditor.extra_plugins через запятую БЕЗ ПРОБЕЛОВ! IPasteMigx,IPasteMs2g
3. Загрузите фотографии в MIGX-галерею (может они уже там). Сохраните документ. Перейдите к содержимому поставьте курсор куда нужно в тексте, нажмите кнопку с добавлением галереи MIGX, откроется окно в котором будут картинки и чекбоксы – отметьте нужные, выберите вставить как галерею.
4. Сохраните документ. Проверьте изменения.
Настройки.
imgspaste_ms2gcats — для ms2Gallery папка категории где будет список вставляемых чанков (шаблонов) для менеджера.

С плагином идет 2 чанка-примера вставки так называемой «галереи».
  • imgsPasteMigxGallery – Оболочка и основной чанк вставки его можно назвать шорт кодом, хотя он не такой короткий, вы можете сделать его под себя намного короче. Настройка imgspaste_migxchunck вам поможет. Внутрь чанка передается параметр imgs с номерами ID картинок. А в чанке уже все передается снипету getImageList.
  • imgsPasteMigxGalleryRow – элемент списка самой картинки.
  • Аналогично с ms2Gallery: imgsPasteMs2Gallery — вставляемая обертка; imgsPasteMs2GalleryRow — чанк с выводом фото

В этих чанках лишь пример. Вы можете навесить на них свои классы и функционал галереи.
Например галереи и фотки сделать, как на Яндекс-дзене! Легко.
А вставка фотографии тегом вам позволит просто и быстро добавить в контент нужное фото, без нудного использования встроенного менеджера.

Идея вставки чего-то в контент — не затейливая и лежит на поверхности, и хотелось это сделать как-то просто. Последней каплей было то, что клиент мне сказал, «А как мне вставить галерею в середину статьи?» я написал что типа — вот чанк, вот в ручную найдите ID в MIGX, пишите через запятую сами… На что он мне — «Супер неудобно...». И понял я что пора сделать это по человечески, а не как всегда.
Если кому-то это решение пригодится — отлично.
Если будут пожелания для улучшения функционала, встретили баг? Пишите.

UDP 08.04.2021: Добавлена поддержка ms2Gallery в пакет!
UDP 13.04.2021: Добавлена поддержка тегов и шаблонов вставки! Вставить можно или 1 Тег или набор фоток.
UDP 09.02.2022: Добавлена поддержка CKEditor без ms2gallery тегов и шаблонов (пока).
UDP 19.12.2022: Обновление пакета, если необходимо протестировать перед покупкой — пишите в личку.
UDP 14.09.2024: Добавлена поддержка MiniShop2 Gallery для TinyMCE RTE

Дополнение доступно в магазине modstore.pro
Алексей Смирнов
30 марта 2021, 12:34
modx.pro
5
2 645
+15
Поблагодарить автора Отправить деньги

Комментарии: 49

Дима Сайт old см. профиль
30 марта 2021, 21:22
0
Прикольно получилось!
Вот бы такое для CKEditor-а…
    Алексей Смирнов
    30 марта 2021, 21:22
    +2
    )))) пометил в блокнотик :)
      des1gner
      17 апреля 2021, 07:39
      0
      Было бы классно если бы еще передавались описания в атрибуты alt для картинок
        des1gner
        17 апреля 2021, 08:32
        0
        Чанк: imgsPasteMigxGalleryRow
        <img src="[[+[[++imgspaste_migxpole]]]]" title="[[+title]]" alt="[[+description]]">
          Алексей Смирнов
          17 апреля 2021, 14:46
          +1
          title и alt Вы можете добавлять по вкусу сами. Т.к. например у меня в migx поле title называется name
          а описание desc — это вещи которые настраиваются под себя индивидуально.
          Ведь откуда я знаю как вы сконфигурировали MIGX поля?
          Помните что вы можете изменить шаблон вставки чанка(шаблона) в контент в настройках и оформить как вам нужно.
    Sergey Perepechin
    31 марта 2021, 16:15
    0
    В планах поддержка Gallery, msGallery(который в минишопе) и ms2Gallery. — это будет очень правильно.

    Было бы удобно выбиать фотки не только из ресурса который редактируешь, а любой другой «источник» (документ) с фотками.
      Алексей Смирнов
      31 марта 2021, 20:29
      0
      Было бы удобно выбиать фотки не только из ресурса который редактируешь, а любой другой «источник» (документ) с фотками.
      Момент хороший вы озвучили, но эта возможность есть в обычном медиа источнике — там и папки и вложенности.
      Тем более логики в добавлении фоток на вскидку разные и уже штуки три насчитал, а сложность реализации и будет ли смысл в них — скорее всего не перекроют даже себестоимость допа.
      Но если кто проспонсирует — не вопрос, что-нибудь, придумаем.
        Sergey Perepechin
        01 апреля 2021, 22:24
        0
        Вы правы говоря об источниках. НО я немного о другом, представьте что вы сделали товар, загрузили в него картинки, они легли в ms2gallery например. Юзер идёт писать новость про этот товар и знает что его картинки там. Выбрал он товар в вашем плагине как источник картинок и не надо его знать что они в таком-то источнике, с таким то айди и тд и тп и все снова запутались… а тут выбрал товар(ресурс) как «источник»))) я вот что имел ввиду.
          Алексей Смирнов
          02 апреля 2021, 10:09
          0
          Ага, понял.
          В таком случае нужно сделать удобный поиск этого товара (по примеру как в ссылках реализовано до 2.0 версии тини).
          Такой вариант работы часто нужен? (плюсуйте, чтобы я понимал на сколько это необходимо).
          Т.к. проблем чтобы это добавить в пакет — нет, вопрос приоритета пока.
        iWatchYouFromAfar
        31 марта 2021, 22:57
        0
        Подобную штуку, правда более простую я уже делал — modx.pro/solutions/18899. Сурсы открыты и банально просты для понимания. Прадва этот плагин для TinyMCE Rich Text Editor < 2.

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

        А доп крутой, @Алексей Смирнов молоток! Правда я не очень понимаю как ты это делаешь будешь защищать, но ладно.
          Алексей Смирнов
          31 марта 2021, 23:44
          0
          Спасибо!
          Ты кстати писал решение для ms2Gallery.
          Тут решение для migx пока.
          Как будут силы добавлю для других галерей.
          Ну и поддержку Tint MCE RTE <2 версии тоже добавлю позже. Пока желающих нет маякнуть хотелки.
          Пока только о полагине CKEditor заикнулись… он уже в процессе…

          Правда я не очень понимаю как ты это делаешь будешь защищать
          Сделал все что мог для защиты. Времени конечно угрохано много. Но нужно двигаться вперед…
            iWatchYouFromAfar
            31 марта 2021, 23:55
            0
            Я видимо не тому ответил, я как раз хотел сказать что писал решение для ms2Gallery. :)
            Алексей Соин
            02 апреля 2021, 07:51
            0
            Ещё очень не хватает в TinyMCE кнопки загрузки изображения сразу с компьютера, минуя менеджер файлов. Несколько раз сталкивался с тем, что менеджерам кажется сложным загружать файл сначала в папку менеджера файлов, а потом его выбирать для вставки в контент.
              Алексей Смирнов
              02 апреля 2021, 10:04
              0
              Погодите.
              Ведь в редакторах есть кнопка вставить фото — при нажатии можно открыть менеджер файлов и выбрать. Если фотки нет — сразу загрузить и выбрать.
              Сложности даже в стандартном варианте не понимаю. Причем можно сразу загрузить несколько и потом в этой папке выбирать.
              В любом случае тут нужно полностью описать проблему которая возникает у менеджеров, потому что решения есть — вопрос реализации и удобства в рамках самого modx. И здаеЦЦа мне что Менеджерам вообще лень что-то нажимать, хотят мыслью все загрузить и выбрать :)
                Алексей Соин
                02 апреля 2021, 10:48
                0
                да, есть, я и говорю про тот сценарий, когда не нужно открывать менеджер файлов, а сразу показывается окно выбора изображения из проводника компьютера. Например такой вариант загрузки изображения используется в компоненте Redactor и в FrontendEditor. Там не то чтобы менеджерам лень, скорее это дольше (нужно открыть менеджер файлов, в дереве папок выбрать нужную, либо создать новую папку, загрузить туда, потом в куче картинок найти ту что загрузил, выбрать её для вставки), а так менеджер нажимает на кнопку, выбирает на компе картинку она загружается и добавляется в контент. Для новостных сайтов с кучей картинок я думаю это больная тема.

                Плюс можно расширить эту идею и при загрузки картинки сразу обрезать её под максимальный размер. Были случаи когда грузили 4К картинки, а потом удивлялись, что долго грузятся))))
                  Алексей Смирнов
                  02 апреля 2021, 11:08
                  0
                  Я на все свои сайты ставлю конвертацию при загрузке. т.е. у меня идет транслитерация, если русскими написано + уменьшение формата фоток до 1920х1080 и этой проблемы по сути нет.
                  Обрезку можно делать прямо в редакторе — есть плагин в tinyMCE RTE Но он в base64 вставляет. просто нужно его вписать в плагины :)
                  Основная идея дополнения во вставке их из migx и в будущем из других галерей, а не в обработке фото и конвертации их.
                  Если необходима такая быстрая вставка с загрузкой — это отдельная тема.
                  Да и потом в migx можно сделать галерею такую — кидануть туда фотки (они сразу же загрузятся как и везде). Сохранить документ и уже выбирать вставку через ImgsPaste. Телодвижений меньше.
          Дмитрий
          08 апреля 2021, 03:08
          0
          Привет, спасибо за плагин! Да, поддержка ms2Gallery очень актуальна
          Алексей Смирнов
          13 апреля 2021, 15:00
          0
          Для ms2Gallery добавил вставку тегов и произвольный шаблон (Чанк) из списка сразу в окошке.
          Список шаблонов формируется в папке.
          Тег вставить можно только один.
            Ivanov Alexandr
            05 июня 2021, 10:30
            0
            Еще бы демо увидеть было бы не плохо.
            Или пощупать на modhost.
              Алексей Смирнов
              05 июня 2021, 23:52
              0
              Демо и пример использования ides.tytweb.ru/imgspaste/
              modhost увы, принципиальная позиция — не возможность протестировать. Т.к. в gif демке есть все необходимое + инструкции. не более не менее.
              Если вас интересуют нюансы — можно просто в теме спросить.
                Ivanov Alexandr
                17 июня 2021, 12:59
                0
                Интеграция с CKeditor больше интересует так как только им пользуюсь. Будет интеграция с ним обязательно куплю.
              Сергей Карпович
              08 февраля 2022, 20:18
              0
              Хотелось бы поддержку CKeditor
                Алексей Смирнов
                08 февраля 2022, 22:31
                0
                В ближайшее время будет.
                Конечно API у него «веселый» поэтому оформление приятное особо не выйдет.
                Алексей Смирнов
                09 февраля 2022, 17:25
                2
                +1
                CKEditor Теперь поддерживается!
                Обновление до ImgsPaste 1.3.0 доступно в репозитории.
                К сожалению для ms2Gallery пока работа с тегами и шаблонами не реализована. (можно вставлять 1 шаблон из системной настройки как для migx).
                  Сергей Карпович
                  27 февраля 2022, 20:03
                  0
                  Это прекрасно!
                  Есть неудобство — фото выбираются мелкими чекбоксами, было бы удобнее если чекбокс был всей строкой с фото с подсветкой выбранных.
                  через label можно сделать.
                    Алексей Смирнов
                    27 февраля 2022, 21:26
                    0
                    Дело в том что API CKEditora своеобразное и очень жесткое в плане разметки и передачи параметров.
                    Если, например в Tiny 5 там можно прям свою разметку сделать и спокойно передать все параметры (id), то в CKE там все жестко со вложенностью и удобно сделать — увы не получиться.
                    Если что-то и получиться придумать, то сделаю. Но уже в следующей версии.
                  Сергей Карпович
                  04 марта 2022, 11:52
                  0
                  Есть ли способ задать чанк для одиночного фото, что бы было возможно настроить кадрирование изображения и сжатие?
                    Сергей Карпович
                    04 марта 2022, 12:09
                    0
                    или подставлять другой чанк, если в галерее только одно фото выбрано?..
                      Алексей Смирнов
                      08 марта 2022, 14:29
                      0
                      Вы можете логику для одной фотки реализовать в этом же чанке. Особенно просто это сделать, если включен режим с феном на страницах. С феном это сделать проще всего.
                        Сергей Карпович
                        08 марта 2022, 15:33
                        0
                        А можете подкинуть пример на fenom?
                          Алексей Смирнов
                          09 марта 2022, 09:49
                          +1
                          Проверил fenom, к сожалению есть проблема в передачи параметров к феному.
                          Поэтому вариант с ним не сработает. (это учту в следующих выпусках).
                          А пока можно на MODX синтаксисе все сделать.
                          Для этого нужно в передающем параметре imgs Проверить наличие запятой.
                          Т.е. если есть ЗПТ, то это более 1й фото, если ЗПТ нет, то одно фото:
                          [[+imgs:contains=`,`:then=`ЗПТ`:else=`ТЧК`]]
                          Проверять естественно в чанке и там дописать разные выводы в самих условиях или используя разные чанки, например в чанке главном (по умолчанию это imgsPasteMigxGallery, но вы создайте свой, чтобы при обновлении не затерся поумолчанию) можно написать следующее:
                          [[$imgsSuperCunks[[+imgs:contains=`,`:then=``:else=`.one`]]]]
                          Таким образом у вас будет 1 чанк imgsSuperCunks — для более 1 фото.
                          imgsSuperCunks.one — для одной фотки.
                    Алексей Смирнов
                    08 марта 2022, 14:53
                    0
                    В тини редакторе есть возможность выбирать и чанк для вставки. В CKEditor с этим пока проблемно.
                      Диман
                      21 мая 2022, 19:54
                      0
                      На Modhost, нет возможности протестировать ваш компонент ((
                        Алексей Смирнов
                        21 мая 2022, 23:43
                        0
                        Да, я пожелал исключить из тестовых установок.
                        На видео показаны возможности.
                        Если у вас есть вопрос — задавайте.
                          Диман
                          22 мая 2022, 16:06
                          0
                          Да, я пожелал
                          Ок, будем кино смотреть ))
                    Алексей Смирнов
                    20 декабря 2022, 18:08
                    0
                    Компонент немного обновил. Исправил баг с установкой.
                    Так же напоминаю, если вы хотите в живую пощупать — пишите мне в личку, тк протестировать на modHost не возможно в виду специфики установки плагина.
                    Успехов!
                      Сергей Карпович
                      10 марта 2023, 16:28
                      0
                      Алексей, поддержка fenom в чанке не появилась?
                        Алексей Смирнов
                        10 марта 2023, 16:39
                        0
                        Я проверю один финт. если получится чанк через феном запустить, о результате отпишусь.
                          Алексей Смирнов
                          10 марта 2023, 17:57
                          0
                          Есть вариант конвертации чанка от MODX в Fenom:
                          Например, сейчас вы вставляете так:
                          [[$imgsPasteMigxGalleryFenom?imgs=`6`]]
                          Если вы в контенте используете только мой плагин, то выводить в шаблоне можно так, заменив на вызов на феном:
                          {set $output = $_modx->resource.content} 
                                 {set $output = $output | replace : "[[$" : "{include '"}
                                 {set $output = $output | replace : "`" : "'"}
                                 {set $output = $output | replace : "?" : "' "}
                                 {set $output = $output | replace : "]]" : "}"}
                                 {$output}
                          В ближайшее время сделаю настройку для вывода в стиле чанка феном.
                          Сергей Карпович
                          06 марта 2024, 21:10
                          0
                          Есть предложение по развитию компонента — подружить его с FileAttach/FileMan
                          Потому что последние также можно использовать как галереи.
                          И тут уже разворачиваются интересные функции вставки в контент не только изображений и галерей, но и файлов.
                          Сергей Карпович
                          07 сентября 2024, 16:41
                          0
                          Вопрос, компонент умеет работать со стандартной галереей MiniShop2?
                            Алексей Смирнов
                            14 сентября 2024, 10:33
                            0
                            Добавил поддержку MiniShop2 Gallery для TinyMCE RTE
                              Сергей Карпович
                              14 сентября 2024, 11:22
                              0
                              Супер, спасибо
                                Сергей Карпович
                                14 сентября 2024, 17:40
                                0
                                Алексей, подскажи, какое название плагина прописывать для MiniShop2 Gallery в параметре tinymcerte.plugins
                                  Алексей Смирнов
                                  14 сентября 2024, 19:03
                                  +1
                                  Поправил в заметках:
                                  Для MiniShop2 Gallery — IPasteMsg — имя плагина.
                              Ник
                              30 сентября 2024, 16:01
                              0
                              Алексей, подскажите, где можно руками исправить путь к картинке, чтобы плагин выдавал путь к превью изображения, а не к первоисточнику в ms2Gallery.
                              Я так понял, что можно решить вопрос больших картинок в Tiny, используя шаблоны вывода.
                              Ждем шаблоны в CKEditor!
                                Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                                49