Интеграция галереи Coppermine в WordPress. Русская переработанная версия + инструкция по применению

coppermine_wp_1

Рассмотрим плагин Coppermine integration 4.0 для 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;
}   

или посмотрите как на рисунке ниже

coppermian.png

  • Сохраняем файл и заливаем назад на сервер
  • Если у вас уже была база в галерее, то все ваши русские названия придут в негодность. При новой установке галереи все пройдет гладко.

(К сожалению нормального способа конвертации из кракозябр в базе в нормальный вид я не нашел. Недавно столкнулся с этим при конвертации базы блога, но там было проще)

Часть 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_wp_4

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

Там же можно в выпадающих меню задать варианты вывода и местоположение для КАЖДОЙ картинки

Например этот полученный код выведет слева одну картинку, а справа другую

coppermine_wp_8

Вставка альбомов:

Необходимо раскрыть верхнюю панель через кнопку ГРУППЫ. появится еще одна панель, где можно выбрать параметры вывода картинок, задать количество картинок из альбома. Также в этом меню находится кнопка ГРУППА, позволяющая в один сплоченный блок объединить сколько угодно картинок, например чтобы разместить их в одной строке .

Это вставит в редактор такой код

coppermine_wp_9

Чтобы добавить картинки между этих тегов, надо поместить курсор между ними и уже затем щелкать по картинкам!

Если вам надо вставить между картинок или после них новую пустую строку то для этого в панеле сверху есть кнопка НОВАЯ СТРОКА, вставляющая тег [ newline ] (без пробелов). Конечно вы можете ввести его и вручную.

Если вы хотите вставить не самые последние загруженные картинки, или их нет в панели быстрой вставки картинок, то нажмите кнопку БОЛЬШЕ КАРТИНОК и кликая по картинкам из любых доступных альбомов, вы быстро вставите сколько угодно картинок.

coppermine_wp_3

Загрузка изображений в галерею. Вы можете это делать прямо из окна редактора, нажав на кнопку ЗАГРУЗИТЬ ФАЙЛЫ в панеле сверху.

Несколько примеров, полученных при выборе разных опций вставки

coppermine_wp_6

coppermine_wp_5

это образец работы строки coppermine_wp_11

Позиционирование в тексте

  • l: слева
  • r: справа
  • c: по центрунапримерcoppermine_wp_7 показывает картинку 23 по центруИспользование картинок в шаблонеВставка кода в sidebar.php будет показывать случайные картинки

    coppermine_wp_10

    Более подробные варианты рассмотрены в оригинальной документации, включенной в архив плагина (файлы CHM). Также можно найти этот текст по ссылке

    Скачать

    ZIP
    Русская версия

    Скачали 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. 51 Павел 4 января 2008 в 21:24 (GMT+6)

      Однако введено все правильно префикс таблиц cpg14x_ такой же как и при установки Coppermine
      <a href=”">


    2. 52 Boqueano 16 января 2008 в 15:31 (GMT+6)

      Добрый день!

      у меня аналогичная проблема с интеграцией cpg версии 1.4.3

      “Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц”

      префекс указан правильно,
      тестирование провожу на Denwer 1.3.33

      Подскажите как решить проблему?

      Спасибо!


    3. 53 Виктор 17 января 2008 в 0:31 (GMT+6)

      ДА-да,и ещё раз ДА….. У меня такая же проблема. Видимо это глобальная проблема :-)
      Кто решил данную проблему, напишите сюда…


    4. 54 Виктор 30 января 2008 в 0:44 (GMT+6)

      И до сих пор никто не знает чтоли??? я тоже.. :-)

      Если кто решит эту проблему напишите…


    5. 55 Виктор 31 января 2008 в 16:35 (GMT+6)

      Вообщем решилась проблема тем, что установил оригинальный плагин…на англ. языке.


    6. 56 shperk 7 февраля 2008 в 11:23 (GMT+6)

      А работает ли этот плагин с версией МУ?
      Было бы круто…


    7. 57 Lecactus 7 февраля 2008 в 13:07 (GMT+6)

      А работает ли этот плагин с версией МУ?
      Было бы круто…

      попробуйте и узнаете. я сомневаюсь


    8. 58 SS 12 февраля 2008 в 17:33 (GMT+6)

      Скачал всё как сказано.
      Закачал что новую англ, что ту, что выложена здесь
      и всё равно

      Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц. Это обычно что то вроде “cpg133_” или “cpg14x_”.
      Подключение к базе данных не используется совместно с WordPress.

      или

      Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц. Это обычно что то вроде “cpg133_” или “cpg14x_”.
      Подключение к базе данных используется совместно с WordPress.

      при англ. варианте то же самое но на англ языке…

      что можно сделать?


    9. 59 Виктор 1 марта 2008 в 21:41 (GMT+6)

      Здравствуйте, подскажите как убрать кракозябры в базы данных Coppermine Photo Gallery
      Вы писали на одном форуме, что разобрались..
      Заранее спасибо за ответ.


    10. 60 SidexQX 4 марта 2008 в 1:58 (GMT+6)

      А как прсото встроить копермайн в страницу wp? что б галерея отображалась вместо контента?


    11. 61 Lecactus 4 марта 2008 в 8:08 (GMT+6)

      А как прсото встроить копермайн в страницу wp? что б галерея отображалась вместо контента?

      когда устанавливал – я просто “нарисовал скин” аналогичный теме WP для галереи


    12. 62 SidexQX 5 марта 2008 в 17:32 (GMT+6)

      А как прсото встроить копермайн в страницу wp? что б галерея отображалась вместо контента?

      когда устанавливал – я просто “нарисовал скин” аналогичный теме WP для галереи

      А как же менюшки, и виджеты? Непонимаю как их туда запихнуть(…


    13. 63 Lecactus 5 марта 2008 в 18:46 (GMT+6)

      А как же менюшки, и виджеты? Непонимаю как их туда запихнуть(…

      никак. и оно вообще надо? лишние тормоза при загрузке страниц галереи


    14. 64 SidexQX 6 марта 2008 в 21:23 (GMT+6)

      я то ж подумал о тормазах… уже наблюдал определённые тормоза при вставке на страницы WP вставил инклудом небольшой скрипт из другого скрипта, правда там ещё конвертор кодировки используется)).. но тормоза заметные)))
      Значит просто дизайн подтянуть… Ясно, спасибо)
      Вот ещё вопрос, может кто-то использовал галерею как файлвый архив? Для храения кучи разных файлов (rar, zip, djvu, doc и пр…)?


    15. 65 Lecactus 6 марта 2008 в 21:25 (GMT+6)

      Вот ещё вопрос, может кто-то использовал галерею как файлвый архив? Для храения кучи разных файлов (rar, zip, djvu, doc и пр…)?

      думаю это более уместно искать на форумах


    16. 66 Виктор 8 марта 2008 в 18:40 (GMT+6)

      Lecactus, подскажите как убрать кракозябры в базы данных Coppermine Photo Gallery
      Вы писали на одном форуме, что разобрались..
      Заранее спасибо за ответ.


    17. 67 Андрей 19 марта 2008 в 2:34 (GMT+6)

      Доброго времени.
      При настройке плагина и проверки конекта с базой:
      Подключение к базе данных было успешным, но таблицы Coppermine не были найдены. Возможно вы ввели некорректный префикс таблиц. Это обычно что то вроде "cpg133_" или "cpg14x_".
      Подключение к базе данных не используется совместно с WordPress.

      И, как следствие:
      Warning: Invalid argument supplied for foreach() in .../wp-content/plugins/coppermine/coppermine.php on line 765
      Строка:
      $sql="SELECT name, value FROM {$CPG_CONFIG['TABLE_CONFIG']}";

      Абсолютно такая-же БЕДА, все возможные варианты префиксов пробовал, однако настройщик плагина к базе не коннектится. Вернее, ЕСЛИ ВЕРИТЬ комментариям, он базу видит но таблицы копермайна не воспринимает :-(

      Как видно из предидущих комментов эта проблема появляется почти-что у каждого втрого человека воспользовавшегося переведенным вами плагином.

      Очень хочется надеяться на то что ошибка не фатальна. Если вам удастся найти “лекарство” от этого бага, пожалуйста поведайте нам об этом.


    18. 68 Lecactus 19 марта 2008 в 10:48 (GMT+6)

      Абсолютно такая-же БЕДА, все возможные варианты префиксов пробовал, однако настройщик плагина к базе не коннектится. Вернее, ЕСЛИ ВЕРИТЬ комментариям, он базу видит но таблицы копермайна не воспринимает :-(

      Как видно из предидущих комментов эта проблема появляется почти-что у каждого втрого человека воспользовавшегося переведенным вами плагином.

      Очень хочется надеяться на то что ошибка не фатальна. Если вам удастся найти “лекарство” от этого бага, пожалуйста поведайте нам об этом.

      работа проверена только с версией галереи, озвученной в посте, а те кто кричал что НЕ РАБОТАЕТ обычно не задавались этим вопросом. Если кто то проспонсирует изискания с новыми версиями, то я буду заниматься этим. Сам никакими галереями тут сейчас временно непользуюсь


    19. 69 Meison 21 марта 2008 в 0:16 (GMT+6)

      Привет! :)
      мне хотелось узнать у тебя как прикрутить к wordpress’y галерею ( и какая при этом лучше на твой взгляд) и как в ней организовать такие же превьюшки как у тебя на сайте?


    20. 70 Lecactus 21 марта 2008 в 0:40 (GMT+6)

      Привет! :)
      мне хотелось узнать у тебя как прикрутить к wordpress’y галерею ( и какая при этом лучше на твой взгляд) и как в ней организовать такие же превьюшки как у тебя на сайте?

      вопрос из разряда: что лучше сыр или колбаса?
      ДАННЫЙ ВОПРОС и ОТВЕТЫ БЫЛИ УЖЕ РАЗ ТАК …ЦАТЬ на ФОРУМАХ ПОДДЕРЖКИ
      ЧИТАТЬ ЗДЕСЬ


    Страницы: « 1 2 3 [4] 5 » Show All

    Комментарии не по теме удаляются! Читайте реадми дистрибутива, комментарии выше и FAQ! Прежде чем задавать вопрос, прочитайте это. Научитесь ценить чужое время!

     Имя (обязательно)  EMAIL (обязательно)  АДРЕС ЛИЧНОГО БЛОГА

    Вы соглашаетесь с правилами


    При добавлении HTML|CSS|JS|PHP кода в комментарий, оформляйте его через кнопку КОД

     

    Получать комментарии по RSS Адрес трэкбека