Интеграция галереи Coppermine в WordPress. Русская переработанная версия + инструкция по применению
Рассмотрим плагин . При написании этой статьи использовался Coppermine 1.4.13 и WordPress 2.2.3, Mysql 5.0.32, Php 5.2
Работа с галереей версии 1.3x не проверялась, но работать должно.
Краткая справка
- Единый вход(логин) в wordpress и галерею
- Загрузка картинок прямо из окна редактора в галерею
- Быстрая вставка отдельных картинок из галереи в запись
- Возможность группировки картинок
- Применение различных варианты перехода к картинкам и между ними в галерее и в записях
Внесенные мной изменения
В оригинальной сборке плагин содержал несколько недоработок и ошибок, особенно в работе с кодировкой UTF-8. Также выяснилось что сама база Coppermain хранится по умолчанию в “левой” кодировке. К сожалению, если у вас уже заполнена база галереи в “левой” кодировке то придется после модификации самой галереии еще и переименовывать все русские названия картинок/альбомов. Это встроенная недоработка галереи. Исправляется она добавлением одной строки в нужном файле. Ответ на этот вопрос был найден на форуме галереи. Также закрыто несколько “дыр” с сообщениями об ошибках при вызове файлов плагина без авторизации в блоге.
Порядок установки
Часть1. Корректируем кодировку галереи
Для начала нам требуется внести одну строку в файл вашей установки Coppermine чтобы он обрел способность нормально общаться с кодировкой UTF-8. Это нужно делать если у вас используется Mysql 4.1 и выше. Если у вас до сих пор Mysql 4.0 или 3.xx то вам ничего не поможет, кроме апгрейда сервера:
- Заходим в галерею в меню КОНФИГ и выставляем кодировку галереи UNICODE(Рекомендуется), если вы еще это не сделали.
- Переходим в папку установки галереи
- Находим файл \include\functions.inc.php и копируем его себе на компьютер
- Находим там приведенный код и вносим изменения
- добавляем тут строку 187 как на рисунке
function cpg_db_connect() { global $CONFIG; $result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']); if (!$result) { return false; } if (!mysql_select_db($CONFIG['dbname'])) return false; <strong><font size="4">mysql_query("SET NAMES 'utf8'",$result);</font></strong> return $result; }или посмотрите как на рисунке ниже
- Сохраняем файл и заливаем назад на сервер
- Если у вас уже была база в галерее, то все ваши русские названия придут в негодность. При новой установке галереи все пройдет гладко.
(К сожалению нормального способа конвертации из кракозябр в базе в нормальный вид я не нашел. Недавно столкнулся с этим при конвертации базы блога, но там было проще)
Часть 2. Устанавливаем плагин в wordpress
- Распаковываем архив плагина
- Копируем папку coppermine в папку плагинов вашего блога
- Копируем файлы из папки cpg/1.4x/ в папку где установлена галерея
- Переходим в панель администрирования WordPress ->Плагины
- Находим там в списке плагин Coppermine и не активируя его переходим по ссылке в описании плагина “Перейдите сюда для настройки”
- Там вводим данные для подключения и выставляем нужные настройки. Возле каждого пункта настроек есть значок“?” поясняющий что значит текущий пункт. Расписывать смысла особого нет, там все понятно интуитивно, если что можно понажимать на вопросики и почитать описания.
- По ссылке сверху страницы конфигурирования возвращаемся к странице плагинов и активируем его. После этого у нас в редакторе появится новая панель сверху окна
Часть 3. Возможность кастомизации вывода картинок и устранение возможных конфликтов
В файле плагина coppermine.php заложены две строки, редактируя которые можно добиться вывода по превьюшке/изображению разных действий
- Если вы используете плагин lightbox2 и вы хотите при клике по картинке переходить на страницу картинки в галерее, или воспользоваться всплывающим javascript окном, то вам нужно закомментировать строку 247 и раскомментировать строку 246
Найти ее вы можете по запросу
</em><em>return "<a style=\"background: transparent;\" class=\"cpg-link\" rel=\"lightbox[my]\" href=\"$href\">$html_img</a>";</em><em>
- Если вы хотите при клике по картинке открывать ПОЛНОРАЗМЕРНОЕ изображение, а не то что показывается на странице в галерее, то вам нужно закомментировать строку 1487 и раскомментировать строку 1486.
Найти ее вы можете по запросу
$uri = $cpg_uri.$image->filepath.$image->filename;
Тут есть одна хитрость. Если использовать дополнительный скрипт, то можно выводить изображение любого заданного размера(одна настройка для всех картинок) и накладывать логотип. В мою сборку плагина он уже вложен в архив copyright2.rar (Автор скрипта )
- По умолчанию в дистрибутиве лайтбокс разрешен и включен вывод полноразмерных картинок
- Кстати лайтбокс корректно работает если на странице представлено любое количество картинок. Работает переход вперед-назад. Причем если какая то картинка представлена на странице несколько раз, то при в лайтбоксе она повторяться не будет.
Часть 4. Рассмотрим подробнее работу с плагином
Панель вставки изображений
Она позволяет:
Включить последнюю загруженную фотографий одним нажатием кнопки.
Выбрать, как фотографии должны быть показаны.
Включить альбомы.
Загрузить фотографии в галерею Coppermine.
Выбрать фотографии из галереи.
Там же можно в выпадающих меню задать варианты вывода и местоположение для КАЖДОЙ картинки
Например этот полученный код выведет слева одну картинку, а справа другую
Вставка альбомов:
Необходимо раскрыть верхнюю панель через кнопку ГРУППЫ. появится еще одна панель, где можно выбрать параметры вывода картинок, задать количество картинок из альбома. Также в этом меню находится кнопка ГРУППА, позволяющая в один сплоченный блок объединить сколько угодно картинок, например чтобы разместить их в одной строке .
Это вставит в редактор такой код
Чтобы добавить картинки между этих тегов, надо поместить курсор между ними и уже затем щелкать по картинкам!
Если вам надо вставить между картинок или после них новую пустую строку то для этого в панеле сверху есть кнопка НОВАЯ СТРОКА, вставляющая тег [ newline ] (без пробелов). Конечно вы можете ввести его и вручную.
Если вы хотите вставить не самые последние загруженные картинки, или их нет в панели быстрой вставки картинок, то нажмите кнопку БОЛЬШЕ КАРТИНОК и кликая по картинкам из любых доступных альбомов, вы быстро вставите сколько угодно картинок.
Загрузка изображений в галерею. Вы можете это делать прямо из окна редактора, нажав на кнопку ЗАГРУЗИТЬ ФАЙЛЫ в панеле сверху.
Несколько примеров, полученных при выборе разных опций вставки
Позиционирование в тексте
l: слеваr: справаc: по центрунапримерБолее подробные варианты рассмотрены в оригинальной документации, включенной в архив плагина (файлы CHM). Также можно найти этот текст по
Скачать
Скачали 7924 раз
Данная версия плагина корректно работает с русским языком при условии что база галереи работает в правильной кодировке UTF-8
PS. Тему оформления галереи “под wordpress” этот плагин не делает, нужно взять из архива coppermine подходящую тему и внести в ней изменения в CSS и самом шаблоне.
Дополнительная информация
ошибку с кодировкой при использовании автономной базы галереи исправил – теперь не обязательно использовать общую базу с блогом
также выяснил проблему конфликта с плагином popularity contest – если вы пользуетесь этим плагином и таблицы галереи в базе отличной от базы вордпресса то в базе галереи достаточно скопировать через phpmyadmin таблицу ВАШПРЕФИКСВОРДПРЕССА_ak_popularity например экспортировав ее из базы блога и импортировав в базу галереи.
Возможно, если у вас есть какие то экзотические плагины, то возможно потребуется также скопировать таблицы, которые не будут найдены при отображении страницы блога.
Также можете у меня скачать уже исправленную версию самой галереи coppermain версии 1.4.13. Изменен там только 1 файл, про который идет речь выше
Демо-примеры работы плагина можно увидеть прямо здесь ниже
[thumb:358:l:s=1:l=d] включена тень, выравнивание слева, ссылка на полное изображение[newline]
[thumb:357:l:s=0:l=http://wordpress.org]выключена тень, выравнивание слева, ссылка на произвольный адрес(в данном случае ссылка на сайт вордпресса[newline]
[thumb:356:r:s=1:l=x] выравнивание справа, тень включена, без ссылок
Решение возможных проблемПри одновременном использовании плагинов coppermain integration и popularity contest может возникнуть следующая проблема:Если базы галереи и блога лежат в различных базах на одном сервере или на разных серверах, то в плагине popularity contest потребуется внести несколько изменения в коде, т.к. при интеграции галереи сайт работает сразу с двумя базами. И если не находится таблица wp_ak_popularity (где wp_ это префикс вашего блога) в базе галереи то на странице блога возникает ошибка. И даже если такую таблицу создать в базе галереи, то данные в нее записываться не будут, как не будут они записываться и в базе блога! Это я обнаружил через неделю эксплуатации. К счастью проблема решаема. Просматривая какой то форум обнаружил что эта проблема не нова и , НО автор написал несколько расплывчато и без примеров, поэтому я сидел и ломал голову что и как сделать, хотя идею понял почти сразу.Решение проблемы:Открываем файл popularity-contest.php и переходим к строкам 1492,1493 (в моей русской версии это там). Если у вас английская версия, то строки можно найти задав в поиске function akpc_init()в оригинале они выглядят так:
$wpdb->ak_popularity = $table_prefix.'ak_popularity'; $wpdb->ak_popularity_options = $table_prefix.'ak_popularity_options';
исправляем их на примерно такие:
$wpdb->ak_popularity = '<strong>bazawp</strong>.<em><strong>prefiks_</strong></em>ak_popularity'; $wpdb->ak_popularity_options = '<strong>bazawp</strong>.<em><strong>prefiks_</strong></em>ak_popularity_options';
где
bazawp – это имя вашей базы блога
prefiks_ – префикс таблиц блога
PS это решение проблемы поможет уже после активации плагина. иначе выдает ошибку при активации этого и других плагинов. надо копать
Связанные записи
90 комментариев
Страницы: « 1 2 3 [4] 5 » Show All
Страницы: « 1 2 3 [4] 5 » Show All
Комментарии не по теме удаляются! Читайте реадми дистрибутива, комментарии выше и FAQ! Прежде чем задавать вопрос, прочитайте это. Научитесь ценить чужое время!


(голосов: 11, средний: 4.18 из 5)

4 января 2008 в 21:24 (GMT+6)
Однако введено все правильно префикс таблиц cpg14x_ такой же как и при установки Coppermine
<a href=”">
16 января 2008 в 15:31 (GMT+6)
Добрый день!
у меня аналогичная проблема с интеграцией cpg версии 1.4.3
“Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц”
префекс указан правильно,
тестирование провожу на Denwer 1.3.33
Подскажите как решить проблему?
Спасибо!
17 января 2008 в 0:31 (GMT+6)
ДА-да,и ещё раз ДА….. У меня такая же проблема. Видимо это глобальная проблема :-)
Кто решил данную проблему, напишите сюда…
30 января 2008 в 0:44 (GMT+6)
И до сих пор никто не знает чтоли??? я тоже.. :-)
Если кто решит эту проблему напишите…
31 января 2008 в 16:35 (GMT+6)
Вообщем решилась проблема тем, что установил оригинальный плагин…на англ. языке.
7 февраля 2008 в 11:23 (GMT+6)
А работает ли этот плагин с версией МУ?
Было бы круто…
7 февраля 2008 в 13:07 (GMT+6)
попробуйте и узнаете. я сомневаюсь
12 февраля 2008 в 17:33 (GMT+6)
Скачал всё как сказано.
Закачал что новую англ, что ту, что выложена здесь
и всё равно
Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц. Это обычно что то вроде “cpg133_” или “cpg14x_”.
Подключение к базе данных не используется совместно с WordPress.
или
Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц. Это обычно что то вроде “cpg133_” или “cpg14x_”.
Подключение к базе данных используется совместно с WordPress.
при англ. варианте то же самое но на англ языке…
что можно сделать?
1 марта 2008 в 21:41 (GMT+6)
Здравствуйте, подскажите как убрать кракозябры в базы данных Coppermine Photo Gallery
Вы писали на одном форуме, что разобрались..
Заранее спасибо за ответ.
4 марта 2008 в 1:58 (GMT+6)
А как прсото встроить копермайн в страницу wp? что б галерея отображалась вместо контента?
4 марта 2008 в 8:08 (GMT+6)
когда устанавливал – я просто “нарисовал скин” аналогичный теме WP для галереи
5 марта 2008 в 17:32 (GMT+6)
А как же менюшки, и виджеты? Непонимаю как их туда запихнуть(…
5 марта 2008 в 18:46 (GMT+6)
никак. и оно вообще надо? лишние тормоза при загрузке страниц галереи
6 марта 2008 в 21:23 (GMT+6)
я то ж подумал о тормазах… уже наблюдал определённые тормоза при вставке на страницы WP вставил инклудом небольшой скрипт из другого скрипта, правда там ещё конвертор кодировки используется)).. но тормоза заметные)))
Значит просто дизайн подтянуть… Ясно, спасибо)
Вот ещё вопрос, может кто-то использовал галерею как файлвый архив? Для храения кучи разных файлов (rar, zip, djvu, doc и пр…)?
6 марта 2008 в 21:25 (GMT+6)
думаю это более уместно искать на форумах
8 марта 2008 в 18:40 (GMT+6)
Lecactus, подскажите как убрать кракозябры в базы данных Coppermine Photo Gallery
Вы писали на одном форуме, что разобрались..
Заранее спасибо за ответ.
19 марта 2008 в 2:34 (GMT+6)
Абсолютно такая-же БЕДА, все возможные варианты префиксов пробовал, однако настройщик плагина к базе не коннектится. Вернее, ЕСЛИ ВЕРИТЬ комментариям, он базу видит но таблицы копермайна не воспринимает :-(
Как видно из предидущих комментов эта проблема появляется почти-что у каждого втрого человека воспользовавшегося переведенным вами плагином.
Очень хочется надеяться на то что ошибка не фатальна. Если вам удастся найти “лекарство” от этого бага, пожалуйста поведайте нам об этом.
19 марта 2008 в 10:48 (GMT+6)
работа проверена только с версией галереи, озвученной в посте, а те кто кричал что НЕ РАБОТАЕТ обычно не задавались этим вопросом. Если кто то проспонсирует изискания с новыми версиями, то я буду заниматься этим. Сам никакими галереями тут сейчас временно непользуюсь
21 марта 2008 в 0:16 (GMT+6)
Привет! :)
мне хотелось узнать у тебя как прикрутить к wordpress’y галерею ( и какая при этом лучше на твой взгляд) и как в ней организовать такие же превьюшки как у тебя на сайте?
21 марта 2008 в 0:40 (GMT+6)
вопрос из разряда: что лучше сыр или колбаса?
ДАННЫЙ ВОПРОС и ОТВЕТЫ БЫЛИ УЖЕ РАЗ ТАК …ЦАТЬ на ФОРУМАХ ПОДДЕРЖКИ
ЧИТАТЬ ЗДЕСЬ