Предисловие
Галереи изображений, иными словами фотоальбомы, не всегда могут понадобится. Многие проекты, до сих пор прекрасно обходятся без галерей. Но тогда, когда мы сталкиваемся с задачей, где изображения (фотографии) нужно сортировать на логические структуры, без галерей не обойтись. Вы глубоко заблуждаетесь, если считаете, что галереями нужно пользоваться только тогда, когда есть потребность в размещении фотографий пользователей. На самом деле, использовать галереи можно для чего угодно. Будь то, квартальный отчёт с графиками, снимки космических тел, в разные периоды активности, фотографии гео-активности земного шара в разные сезоны. Всё это друзья и есть сортировка изображений на логические структуры.
В связи с тем, что многие по сей день сталкиваются с проблемами, при установке, настройке и использованию галерей изображений, мною было принято решение написать небольшое пособие на эту больную тему. Своего рода вводный курс. Надеюсь, это введение поможет не только тем, кто уже столкнулся с проблемами и неразрешёнными вопросами, но и тем, кто ещё не начал разворачивать функционал галерей, но в перспективе с этим столкнётся.
В моём примере я использую следующий набор модулей IMCE + IMCE_Gallery. Итак, вы готовы? Мы отправляемся!
Шаг первый, устанавливаем IMCE
Для начала, нам нужно скачать модуль IMCE. Скачайте IMCE, находящийся по адресу http://drupal.org/project/imce. и создайте папку sites/all/modules для модулей, если вы этого не сделали ранее. Далее, просто распакуйте архив, imce-5.x-1.0.tar.gz в папку sites/all/modules/imce/ . После того, как вы распаковали архив, вам нужно включить модуль IMCE в разделе администрирования модулей, находящимся по адресу admin/build/modules:
Начнём с того, что отправимся в раздел контроля доступа admin/user/access и настроем права на использование пользователями IMCE:
Да, может быть в реальных событиях и не стоит анонимным пользователям давать доступ к IMCE, но мы, за отсутствием других ролей, представим, что anonymous user это будто созданная нами роль и будем с ней работать надлежащим образом.
Далее нам понадобится настроить модуль. Отправляемся в раздел настройки модуля IMCE admin/settings/imce и видим приблизительно такую картину:
Так, как мы разрешили доступ к IMCE, у нас появилось 2 дополнительных пункта: Settings for the role: authenticated user (Настройки для роли: authenticated user) и Settings for the role: anonymous user (Настройки для роли: anonymous user). Эти пункты не появились бы, если бы мы с вами не разреши доступ в разделе контроля доступа.
Начнём с Common Settings. Так как мы не ставим себе целью в этом уроке использовать IMCE для вставки изображений в материалы, мы не будем включать вставку изображений и файлов в простые текстовые области. Иными словами, поле «Enable inline image/file insertion into plain textareas» мы оставим пустым.
Следующим нашим шагом будет настройка порядка действия ролей. Важно знать, что пользователь с несколькими ролями получает разрешения самой высокой из них. Отсортируем ID ролей согласно их иерархии от высшей к нижней, поместим между ними >: 2>1. Замечу, что в нашем случае 2 это пользовательская роль authenticated user, а 1 — anonymous user.
Далее нам понадобится настроить параметры модуля IMCE для пользователя #1, т.е. администратора. Укажем геометрические размеры для уменьшения (Dimensions for scaling), на тот случай, если загружаемая картинка превысит данный размер, она будет уменьшена до тех размеров, которые мы укажем. Размеры уменьшенной копии (Thumbnail dimensions) оставим в покое, повторюсь, в этом уроке мы будем использовать IMCE только как загрузчик изображений в галерею. Директорию для загрузки (Your upload directory) оставим без изменений — u1.
Ну что, вам ещё интересно? Тогда отправляемся настраивать IMCE для наших ролей, мы на полпути к победе.
Эксперимента ради, мы будем использовать одинаковые настройки у наших ролей, хотя в реальных событиях нам могут понадобиться разные настройки.
Позволим пользователям удалять загруженные файлы (delete files) и загружать новые (upload files). Укажем геометрические размеры для уменьшения (Dimensions for scaling), а так же укажем нужное нам ограничение на размер загружаемого файла (File size) и квоту на общий объём загружаемых файлов (Upload quota). Префикс для названий личных папок (Prefix for personal folder names) оставим без изменений — u.
Всё!
Примите мои поздравления.
Вы только что, самостоятельно установили и настроили модуль IMCE.
За дополнительной информацией по модулю, обратитесь к сайту проекта IMCE http://ufku.com/drupal/imce
Шаг второй, устанавливаем IMCE_Gallery
Для начала, нам нужно скачать модуль IMCE_Gallery. Скачайте IMCE_Gallery, находящийся по адресу http://drupal.org/project/imce_gallery. и распакуйте архив, imce_gallery-5.x-1.x-dev.tar.gz в папку sites/all/modules/imce_gallery/ . После того, как вы распаковали архив, вам нужно включить модуль IMCE_Gallery в разделе администрирования модулей, находящимся по адресу admin/build/modules:
После того, как мы включили модуль, нам понадобиться его настроить и разрешить пользовательским ролям им пользоваться.
Начнём с того, что отправимся в раздел контроля доступа admin/user/access и настроем права на использование пользователями IMCE_Gallery:
Повторюсь, в реальных событиях и не стоит анонимным пользователям давать доступ к IMCE и IMCE_Gallery но мы, за отсутствием других ролей, представим, что anonymous user это будто созданная нами роль и будем с ней работать надлежащим образом.
Далее нам понадобится настроить модуль. Отправляемся в раздел настройки модуля IMCE admin/settings/imce_gallery . Тут всё просто, нам нужно указать сколько альбомов пользователи могут создать. Давайте подумаем, для чего нам это.
А как же! Как раз для создания графиков в квартальном отчёте нам пригодится один альбом, для одного квартала. Или вот ещё пример: снимки космических тел, в разные периоды активности — один период, один альбом. А фотографии гео-активности земного шара в разные сезоны? Запросто, один сезон — один альбом. Как видите, эта возможность модуля - создавать много альбомов - удивительным образом нам на руку! Вводим нужное нам число и сохраняем результаты.
Ну что, теперь самое интересное. Отправляемся создавать наши галереи или фотоальбомы — как вам удобнее.
Для создания альбома, принадлежащего именно вам, нужно отправиться в личный раздел создания галерей imce_gallery/add:
Где от нас потребуется ввести название галереи (Gallery Name) и её описание (Gallery Description) на тот случай, если названия будут совпадать.
Автор модуля приготовил для нас с вами сюрприз. Он включил возможность публиковать свои галереи или делать из скрытными. В последнем варианте галереи, ровно как и их содержимое будем видеть только мы — авторы галереи. Скрывать галерею от общего обзора удобно тогда, когда допустим у нас есть среди прочих галерей рабочего содержания и те, содержимое которых, относится к разряду «личное».
Указав нужные нам данные, создадим нашу первую галерею (Create).
Подобным образом, создадим остальные требуемые галереи, в требуемом количестве. Помните, у нас есть ограничение на количество галерей, которое мы с вами выставили в настройках по адресу admin/settings/imce_gallery
Ну вот и пришло время для загрузки изображений на сервер и сортировки их по альбомам. Для загрузки изображений, используя IMCE отправляемся в свой профиль (My account), где выбираем раздел Личных фалов (Personal files):
По началу, такой вид с множеством надписей может отпугнуть. Но беспокойтесь, сейчас мы во всё постараемся разобраться.
Перед вами окно с содержимым вашей личной директории (в данном случае files/u1), разделённое на две части. В верхней части отображаются файлы, а в нижней части мы можем просмотреть загруженный файл. Ниже, мы видим строку в которой говориться об ограничениях на загрузку изображений.
Список файлов пуст, фалы не загружены и просматривать нечего. Давайте исправим это. Нажмите на кнопку обзор, выберите изображение и загрузите его к себе в каталог:
Если не убирать галку с функции Scale if necessary, то изображение, которое загрузится к нам в каталог, станет не более того размера, которых мы указали в настройках IMCE (Dimensions for scaling). А если уберём галку, изображение загрузится без изменений. Эта возможность есть только у администратора системы. У других пользователей, если не указать явно, этой опции не будет.
Всё, в верхней части нашего окна мы видим загруженное изображение, в нижней мы сможем его просмотреть. Как видите не так уж и сложно, зря мы с вами паниковали. Подобным образом, загружаем все нужные нам изображения.
И последний штрих, добавление изображений в фотоальбомы.
Напротив каждого изображения, в верхней части окна есть ссылка add to gallery, нажав на которую, мы, выбрав галерею, из тех которые нами созданы отсортируем наши изображения по категориям. Подобным образом сортируем остальные изображения. Замечу, что одно и тоже изображение, может находиться в нескольких фотоальбомах. Например в случае, когда у нас есть 2 фотоальбома «Девушки программистки» и «Встречи с заокеанскими друзьями» мы можем подходящую по категориям фотографию разместить в 2 альбома.
Помните, на самом деле фотографии в галереях не создаются. А всего лишь выводятся в них. И если наша, предполагаемая фотография находится даже в 20 альбомах, на самом деле, физически это один файл.
Ну вот и всё. Мы с вами проделали большую и полезную работу и можем гордиться собой. Осталось убедиться в том, что изображения отсортированы и доступны для просмотра.
Отправляемся в наши галереи (My Gallery), выбираем галерею, и наслаждаемся!
Эпилог
На самом деле, как бы плохо не относились к галереям, последние являются мощным средством по предоставлению структурированного содержимого. Так или иначе, если в проекте предусмотрено массовое использование большого количества изображений и изображения следует разбить на категории, то без галерей вам не обойтись. Многие на сегодняшний недолюбливают работу с изображениями и всячески по возможности оттягивают обучение этому процессу. А зря, ведь эта удивительная возможность, предоставлять структурированные данные, не так уж и сложна в усвоении!
В прилагаемом прикреплении, находится патч модуля IMCE_Gallery.
На сегодняшний день (19.06.2007), оригинальный модуль не работает так, как этого требует наш урок. Автор исправлений http://drupal.ru/user/sign
Успехов вам, во всех начинаниях.
С уважением Сергей Яковлев (aka SadhooKlay)
Вложение | Размер |
---|---|
imce_gallery.tgz | 4.2 КБ |
Комментарии
Уау! Спасибо! ваще.
Рад, что полезен : )
по причине неработающих закладок отписываюсь тут, чтобы не потерять тему
Полезный материал, спасибо. Интересно, а массовый импорт изображений в IMCE_Gallery возможен?
массовый импорт возможен в модуле image
у него есть и своя галерея.
хотя лично меня не устроило то, что он всё сваливет в одну кучу, да и менее существенные вещи в работе раздражают.
ну еще и рисунок становится саостоятельной нодой.
Массовый видимо нет.
СПС Sadhoo!!
Полезная вещь.
Стоит задача фотогаллерии для сайта про кино (то есть актеры и так далее) советуешь IMCE или взять image ?
Одно кино - один пользователь - одна галерея : )
Почему бы и не IMCE_Gallery?
Спасибо!
Всегда готов : )
А есть русский перевод? Может сделает кто ныбудь! А я скачаю.
Перевод IMCE_Gallery в моём блоге.
Перевод IMCE делала Natalie.
Плохо ищите господин artcons.
У нас флуд не в моде.
Все получилось, здорово, сеньку!
тема полезная, спасибо, а развейте мои сомнения, это на фотке Вы и Натали? нет возможности проверить, а поля там можно добавлять(ССК)?
Вы и Натали
Угу
а поля там можно добавлять(ССК)
Пока нет, но я думаю заняться этим вопросом.
Если получится что то дельно, обязательно сообщу.
Интересно, а если мне надо выложить сотню фотографий в определенную галерею, мне по одной чтоль закачивать?
У меня реализована такая штука, как качаешь через ftp картинки в определенную директорию, а потом импортируем в галерею.... а здесь как?
Здесь точно также.
Если вы зальёте 100 файлов по ftp, то они будут доступны для сортировки по галереям.
Видимо, единственный вариант массового залива фоток - это прикрутить Gallery2, но...
Эта зараза по дефолу требует php safe_mode=off (на сайте поддержки есть 14-ти страничный тред на эту тему со смыслом "нафига фигню нафигачили"), правда это решается выкидыванием всех проверок, но как-то это... некашерно.
Кроме того эта зараза требует gettext, который обычно на дешевых хостингах тоже отсутствует. Короче, гениальное изобретение, но прикручивать опупеешь
Да, еще одну ерунду мне победить не удалось - разметка там минимальная жесткая и на жестких темах Drupal-а все выглядит вкривь и вкось, спасает только резинка в темах.
Зато удобный альбомчик получае, с масс-аплодом и даже какой-то десктопной частью. Правда на Linux прицепить ее не получилось Похоже,все же руки у меня кривоваты.
warning: Invalid argument supplied for foreach() in /www/sites/all/modules/imce_gallery/imce_gallery.module on line 368.
Эта ошибка возникает у меня одного?
Появляется при клике на название галереи.
http://drupal.org/node/138203
Хм.
Не знаю, не знаю.
Не попадалась такая ошибка...
Честно говоря, мне уже не хочется разбираться с эти модулями.
Пишу свою галерею (модуль). То, как я это вижу.
Пишу свою галерею (модуль). То, как я это вижу. - Вот это было бы совсем здорово! Еще бы и выглядела она бы современно и удобно.
Столкнулся с трудностью при организации галлереи:
- всё сделал,
- загрузил файл,
- в нижней части формы Personal files, там где Directory : files/u1 не появилась фотка, клацаю на ссылку add to gallery в строке где появился файл - экран становится чистым , только менюшки сверху и слева.
- а когда клацаю на фотогаллрею то возникает ошибка :
warning: Invalid argument supplied for foreach() in C:\AppServ\www\drupal\modules\imce_gallery\imce_gallery.module on line 368.
- в нижней части формы Personal files, там где Directory : files/u1 не появилась фотка,
Вот на этом надо было и остановиться.
клацаю на ссылку add to gallery
И что вы добавить в галерею собрались, если нет ничего?
Сначала разберитесь, в чём проблема.
Почему не закачивается картинка.
Я так понял, что ошибка:
warning: Invalid argument supplied for foreach() in /www/sites/all/modules/imce_gallery/imce_gallery.module on line 368.
появляется только в некоторых конфигурациях? Может в определенном релизе PHP?
Дело в том, что вместо массива с именами файлов,
в $gallery_info->gallery_items непонятно каким образом дублируется название галереи.
А вообще Друпалу здорово на мой взгляд не хватает полноценной Галереи.
спасибо за статью
Вчера за час поднял галерею на основе стандартного Image (в разделами-галереями и массовым импортом).
К ИМЦЕ присматривался, но не порадовала. Единственно удобное применение, что нашел - именно вставка изображений в материалы («Enable inline image/file insertion into plain textareas»), которую Вы проигнорили
Рассматривал AcidFree - глючила, пока отложил.
Slavyansk.net.ru , как? как эту вставку делать? подскажите?
Вот спасибо добрый человек! Всё поставила. Наслаждаюсь.
Только у меня вопрос. Как же сделать так что бы тего [img].... [/img] можно было таки воспользоваться?
всё нашла. если кто ещё мычается таким вопросом - BUEditor
а я для галерей использую Node_Images. Изначально удобная вещь, но я еще кучу изменений сделал. Почти отдельный модуль получился
>> а я для галерей использую Node_Images. Изначально удобная вещь,
>> но я еще кучу изменений сделал. Почти отдельный модуль получился
интересно - какие например идеи? а то меня все время беспокоит проблема постинга статей с картинками.
Спасибо за содержательную статью.
создал галерею, экспортировал туда картинки,и возникла такая проблема:
- не отображаются стрелочки типа ВПЕРЕД НАЗАД ЗАКРЫТЬ
в папке с темой все есть, но не работает.
подскажите, в чем дело
Посмотрите название файлов со стрелочками, они в папке модуля.
Откройте в редакторе файл *.js и посмотрите правильно ли генерируется путь?
Возможно, что нет.
Если что — подправьте.
Как никак, а версия модуля development snapshot
Мелкие проблемы не исключены.
В крайнем случае посмотрите на странице модуля, может кто то уже задавал подобный вопрос и автор решил проблему?
А может уже новая версия вышла, исправленная?
Ну или, если совсем никак, напишите сами автору, 2-3 дня и решение проблемы будет.
так и есть: неправильно генерируется имя картинок, прописывается не полностью ))
у меня вместо ....localhost/druapal/modules/imce_gallery/next.gif
пишет просто ....localhost/modules/imce_gallery/next.gif
ща буду исправлять
Здравствуйте.
У меня такой вопрос: как очистить галлерею от картинок. Удаляю файлы с "Personal files", но в галлерее они остаются. Более того, не удается удалить саму галлерею... )
Это у всех так?...
Спасибо за такую полезную работу! Побольше бы таких четких и понятных инструкций - и новички меньше задалбывали бы уважаемых гуру! Ждем продолжения....
Здраствуйте!
Столкнулся с такой проблемой:
в один момент imce gallery перестал работать:
захожу в галерею, открываю картинку для просмтора, она открывается, через пару секунд сама закрывается
добавить картинки в галерею не могу - выбираю картинку, нажимаю add to galery - выбираю галерею, выдает сообщение - картинка уже добавлена
с загрузкой картинок в галерею тоже чудеса: выбираю картинку, загрузить файл - типа загружает, имя, размер, все есть.... а в окошке снизу его нету, пишет только Директория: files/u1. файл и на самом деле там есть
естесно, никуда не добавляет ее тоже.
удалил галерею (модули imce, imce galery), установил их заново, тож самое, только теперь даже не могу создать галерею -
перехожу на вкладку "создать галерею" пишу имя галереи, нажимаю создать и все.... форма очищается, типа напиши еще что-нить....
мож подскажите, в чем проблема?
вставлю свои 5 копеек...
не могу прикрутить imce galery - тупо не создает галереи даже под админом.
ввожу название, описание, жму на создать - ноль эмоций.
и нигде ничего не пишет...
в выходные попробую с нуля все поставить, может какой нибудь секрет есть с нестыковками?
В общем веселенкое дело...
Поставил без доп модулей на чистую базу - та же история...
через какое то время манипуляций, заработало! Начал методично копать в чем причина и выяснил, что причина в подключении перевода.
наверное левый как-то затисался или битый... хотя при загрузке никакой ругани со стороны drupal не наблюдалось.
так вот теперь меня мучает вопрос, неужели перевод может имеет такие побочные эффекты или просто
у меня руки иззвезды не так встали?у меня вопрос следующий
а можно ли сделать так, чтобы картинка аплодилась большая, но в редакторе (тини и тд) можно было вставить маленькую со ссылкоу на оригинальную большую?
В imce_gallery были недочеты, такие как вместо $op == t('Create') писалось $op == 'Create' и т.п... Из за этого при переводе не работала галерея, например, нельзя было создать новую и обновить уже имеющиеся
Вот исправленный файл...
В галерее создаются превью не того размера, что я выставил в настройках. Можно это настроить именно в галерее, а не в IMCE? И еще, как сделать, чтобы превью были одинаковы по высоте? Помогите пожалуйста.
А возможно ли сделать так, чтобы галереи созданные с помощью IMCE находилась не только в My Account, но и в каких-нибудь других пунктах меню?
И мне тот же вопрос не дает покоя! Может вы, уважаемая Elodia, уже нашли ответ на него? Очень надо!
Спасибо!
Аркадий
А может кто-нибудь скинуть примерчик сайта с галереями, созданными вышеуказанным способом?
Нашел страничку с описанием еще одного модуля для загрузки изображений. Сам не пробовал, но по скриншотам, вроде бы удобно. http://www.tonyspencer.com/2007/08/15/finally-a-good-image-upload-module...
Мнде... во понаписал то ...
Упорядочивание изображений в списке.
Я пытаюсь вставить изображение в текст.
Нажимаю Insert image и появляется окошко со списком файлов.
У меня их 100. В списке не отображается, но я знаю, что 50 файлов находится в галерее Прага, 50 в галерее Германия.
Можно ли сделать так, чтобы отображались файлы только из галереи Германия, допустим?
Все перерыла ничего не понятно Пыталась использовать Subfolders, но потом выяснила, что их может создавать только администратор, а не сами пользователи
Может кто знает как решить проблему??
Спасибо автору темы! Мне удалось установить IMCE_Gallary. Но есть еще необходимость подписей к превьюшкам в галереях. Возможно ли это? Я не нашла... Или, может быть, посоветуете другой модуль?
Блин ребята помогите, туплю. Не могу даже просто вставить картинку в текст, все вроде стало нормально, на я по английски не бум бум и не понимаю что там в настройках писать, и каким макаром потом картинки вставлять. Задолбался уже, видать переработался, ладно кто ответит тому спасибо пойду покурю. фуууу....
Directory error! - files/u1 такая вот ошибка при переходе в Personal files. Не работает мод обманули народ <^_^>
А у меня не работает. В просмотре галереи вылазит предупреждение warning: Invalid argument supplied for foreach() in z:\home\localhost\www\modules\imce_gallery\imce_gallery.module on line 368.
Кто-нибудь решил эту проблему?
_______________________
обзор беслатных cms
Как установить перевод?
Скачал файл .po
Создал папку po в каталоге "imce_gallery", закачал туда разархивированный файл "imce_gallery.ru.po".
Галерея как была на английском, так и осталась.
Что я неправильно делаю и как надо правильно, чтобы пользователи видели все связанное с imce_gallery на русском языке?
Надо сделать импорт этого файла - http://example.com/admin/build/translate/import на шестёрке. На пятёрке - адрес не знаю (не помню), но что-то вроде этого... Поищите: локализация->импорт.
Кстати, если стоит шестёрка, то надо было скопировать тот файл до первого включения модуля...
А у меня не работает. В просмотре галереи вылазит предупреждение warning: Invalid argument supplied for foreach() in z:\home\localhost\www\modules\imce_gallery\imce_gallery.module on line 368.
И НЕ РАБОТАЕТ
Как лечить?
a est' vozmozhnost' sortirovki fotografij po date? pri tom chtob v sortirovke uchastvovali fotki iz raznyh galerej? i eshe, esli postavit' modul' golosovanij za fotki, mozhno budet po populyarnosti sortirovat' v galereyah takim obrazom realizovannyh?
у меня не видно пункт меню, к которому прицеплена IMCE_gallery, если я захожу под другим пользователем. Видно только под админом. В настройках галереи private не стоит. Акак можно сделать подписи на изображения, которые подцепляешь?
Спасибо. Всё работает
Все работает до момента закачки изображений. Выдает ошибку Error copying the file. Откуда их надо закачивать?
я нашел самую оптимальную галерею на Друпал (для шестерки) - http://drupal.org/project/prog_gallery
Раз пользуетесь модулем autolocale то в папке po надо файл переименовывать на ru.po
Подскажите, почему не отображаются фото, а пустые квадратики в галлерее?
http://pic.ipicture.ru/uploads/090403/7UqlTZ626J.png
Может я патч imce_gallery.tgz не правильно поставил? я из архива imce_gallery.tgz файл скопировал с заменой в модуль imce gallery и потом модуль установил.
и ещё, а какую потом ссылку использовать на галлерею, чтоб посетители видели?
ну помогите
прописал правельный адрес стрелки прерёд и клоуз стали отображаться, а с фото беда http://pic.ipicture.ru/uploads/090403/BpvRZEEM6N.gif
попробуйте сделать ваш_сайт/update.php
Чёт нет у меня в Select versions менюшки для imce_gallery и imce. Другие ток там. Есть ещё варианты7
чё все мастера пропали?
Вы очень смутно описали проблему. Какой патч вы скопировали? Патч или новую версию модуля?
Телепатически могу предположить, что неверно заданы настройки файловой системы (/admin/settings/file-system).
Если картинки не показываются, посмотрите, какой путь к ним указан.
Патч imce_gallery.tgz выложенный автором темы, я скопировал с заменой в папку модуля, потом его установил.
А где путь к картинкам посмотреть?
Вот что у меня в файловой системе http://pic.ipicture.ru/uploads/090405/W2yLL1TP4Y.gif
Спасибо за статью!
С загрузкой рисунков у меня проблемм небыло, зато были с их отображением
После того, как я загрузил рисунок появилось сообщение:
Upload successful - Рис.1.
Но:
после того как я зашел в галерею, там оказалось сообщение что она пуста (Gallery is empty)
Подскажите пожалуйста где я ошибся. Права вроде все разрешил.
русские название не поддерживаются. Они загружаются, но не отображаются
А вот у меня версия друпал 6.15 а на IMCE_Gallery есть только для версии 5.x. Где же взять IMCE_Gallery для моей?
Такая же проблема. Для шестёрки нет IMCE_Gallery...