Плагин создания галереи в материале Joomla pPGallery для 3.4.6 наладка допилка

Небольшие заметки о html, css, sql, php

Модератор: Valery

Правила форума
Гость видит 250 символов 1 сообщения
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

Решено Плагин создания галереи в материале Joomla pPGallery для 3.4.6 наладка допилка

Сообщение Valery »

pPGallery for Joomla 3.4.6 здесь - pPGallery for Joomla 3.2
Мини-галерея в материале Joomla создается так:

Код: Выделить всё

{ppgallery}stories/folder/001{/ppgallery}
Образец работы плагина pPGallery: {ppgallery}stories/folder{/ppgallery}

Если хочется высоту или ширину указать отличную от настроек плагина pPGallery, то делается так:

Код: Выделить всё

{ppgallery width="60" height="40"}stories/vodkomotornik{/ppgallery}
Образец работы плагина {ppgallery height="40"}


По умолчанию pPGallery грузит свои стили и скрипты - нах они не нужны нам - только лишний вес страницы. Используем свои стили и скрипты, которые уже загружены с шаблоном.
Пилим так:
\plugins\content\ppgallery\ppgallery.php
1. Отрубаем загрузку лишних стилей:

Код: Выделить всё

$doc->addStyleSheet($relpath./plugins/content/ppgallery/ppgallery/res/prettyphoto.css);
$doc->addStyleSheet($relpath./plugins/content/ppgallery/ppgallery/res/pPGallery.css);

Код: Выделить всё

//$doc->addStyleSheet($relpath./plugins/content/ppgallery/ppgallery/res/prettyphoto.css);
//$doc->addStyleSheet($relpath./plugins/content/ppgallery/ppgallery/res/pPGallery.css);
2. Переносим стили из pPGallery.css в css шаблона.

3. Включаем свой lightbox, который уже загружен с шаблоном:

Код: Выделить всё

$content .= <a href=".$relpath."/".$imageset[$a]->img_path."/".$imageset[$a]->img_file." rel="prettyPhoto[.$ppgid.]" title=";

Код: Выделить всё

$content .= <a href=".$relpath."/".$imageset[$a]->img_path."/".$imageset[$a]->img_file." rel="lightbox" title=";
4. Создаем свою рамку вокруг фото - из основного стиля шаблона class="image_thumb" заместо громоздкой херни:
   

Код: Выделить всё

$content .= <img src=".$relpath."/".$thb_file." alt=".($imageset[$a]->img_alt == "" ? $imageset[$a]->img_file : $imageset[$a]->img_alt)." width=".$thb_w." height=".$thb_h." title=";

Код: Выделить всё

$content .= <img class="image_thumb" src=".$relpath."/".$thb_file." alt=".($imageset[$a]->img_alt == "" ? $imageset[$a]->img_file : $imageset[$a]->img_alt)." width=".$thb_w." height=".$thb_h." title=";

Чтобы у картинок были alt и title, в папку с картинками добавить файл ppgallery.txt с кодировкой UTF-8 без BOOM следующего содержания:

Код: Выделить всё

"001.jpg","Здесь alt - Мамоново - команда на старте","А это - title Мамоново - команда на старте"
"002.jpg","Въехали в Польшу","Въехали в Польшу"
"003.jpg","Перед Бранево","Перед Бранево"

После установки Content - LVSpoiler в материале с изображениями ошибка:
Unhandled Error: jQuery is not a function
jQuery(document).ready(function($) {
$("a[rel^=\"prettyPhoto\"]").prettyPhoto({
animation_speed: "normal",


Лечится так:
\plugins\content\ppgallery\ppgallery.php

Код: Выделить всё

//if ($noconflict) { $doc->addScriptDeclaration(      jQuery.noConflict();); }
//$doc->addScriptDeclaration(jQuery(document).ready(function($) {$("a[rel^=\"prettyPhoto\"]").prettyPhoto({.ltrim($ppparams,",").})}); //v.4.312);
//$doc->addScriptDeclaration(jQuery(document).ready(function($) {$("a[rel^=\"prettyPhoto[.$ppgid.]\"]").prettyPhoto({.ltrim($ppparams[$ppgid],",").}) }););
img_path.
2018.01.20 - борьба с кэшированием превью
В одном материале 1000 фотографий - при открытии страница долго висит, затем висит хостинг, т.к. создать 1000 фото разом для него проблемно. А ведь после очистки кэша превью создаются снова и снова. Т.е. происходит циклическая операция по созданию нагрузки на хост, хотя картинки не меняются!
Найти:

Код: Выделить всё

//create/check thumb folder in J!cache
 if (!JFolder::exists(JPATH_CACHE.'/ppgallery/'.$ppgid.'/'.$imageset[$a]->img_path)) {
 JFolder::create(JPATH_CACHE.'/ppgallery/'.$ppgid.'/'.$imageset[$a]->img_path, 0755);
Заменить на:

Код: Выделить всё

//create/check thumb folder in Joomla! /images/ppgallery not cache folder - not new created!
 if (!JFolder::exists(images.'/ppgallery/'.$ppgid.'/'.$imageset[$a]->img_path)) {
 JFolder::create(images.'/ppgallery/'.$ppgid.'/'.$imageset[$a]->img_path, 0755);
После этого превью будут храниться в директории images/ppgallery/ и не удаляться кэшем и не создаваться заново.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Valery 21.12.2015 11:04, всего редактировалось 1 раз.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.

Теги:
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

Content - pPGallery для Joomla 1.5 - 2.5 - Lightbox2 пролистывание изображений

Сообщение Valery »

Один недостаток - нельзя пролистывать фото, а можно только открыть - закрыть, а затем уже открыть следующую. Т.е. при большом объеме фото тыкать надо избыточно - поэтому были жалобы на просмотр фото...
А надо чтобы после открытия большой фото при клике на ней открывалась следующая большая, расположенная в этой папке.
Это делает плагин Simple Image Gallery Pro (by JoomlaWorks), но переставлять, потом менять всем файлам title и прочее - ну нах этот гимор...
Проще доточить имеющееся.

Взор упал на скрипт Внешняя ссылка - он как раз умеет открывать картинки из папки и перелистывать их. Осталось за малым - подключить скрипт pPGallery на Joomla 2.5

Это делается так:
1. Скачиваем Внешняя ссылка
2. Папку js копируем в корень сайта. (можно изменить в css)
3. Папку img копируем в папку с шаблоном (можно изменить в css)
4. Содержимое файла lightbox.css обрабатываем компрессором css и добавляем в css шаблона
5. Находим строку:

Код: Выделить всё

$content .= <a href=".$relpath."/".$imageset[$a]->img_path."/".$imageset[$a]->img_file." rel="lightbox" title=";

Меняем на это:

Код: Выделить всё

$content .= <a href=".$relpath."/".$imageset[$a]->img_path."/".$imageset[$a]->img_file." data-lightbox=".$relpath."/".$imageset[$a]->img_path." rel="lightbox" title=";
ВАЖНОЕ УТОЧНЕНИЕ: Параметр data-lightbox="НОМЕР ГРУППЫ ИЗОБРАЖЕНИЙ" отвечает за то, чтобы переход осуществлялся только по изображениям одной папки. Если его убрать, то будут листаться все картинки из разных папок, которые выведены на одной странице.
6. В index.php после секции <head> добавляем код:

Код: Выделить всё

<script src="js/jquery-1.10.2.min.js"></script>
<script src="js/lightbox-2.6.min.js"></script>
Лично я сделал так:

Код: Выделить всё

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascri0"></script>
<script src="js/lightbox-2.6.min.js"></script>
Т.е. jQuery загрузил с с сервера Google - для ускорения загрузки зайта.
Изображения в материал вставляются по прежнему кодом:
{ppgallery}stories/136-veloprobeg-poland-2013/001{/ppgallery}
Но выводятся теперь этим скриптом Lightbox2 более прилично - не надо каждый раз его закрывать, чтобы открыть следующее - при клике на картинку будет открываться следующая, пока не дойдет до последней картинки из папки.

Плагин pPGallery ставится и на Joomla 3.1 - соответственно можно реализовать и там этот тюнинг с выводом изображений.

For you long time Lightbox users, dont fret, you can still enable Lightbox by using rel="lightbox". The new data-lightbox approach is preferred though as it is valid html.
Последний раз редактировалось Valery 27.11.2013 09:32, всего редактировалось 1 раз.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

pPGallery для Joomla! 3.2 установка и допилка

Сообщение Valery »

Для Joomla! 3.2 оформил в виде плагина pPGallery для Joomla! 3.2 - ставится/удаляется штатно, но при открытии фото не разворачивает его по ширине до 100%. За это отвечает параметр width:d в lightbox-2.6.min.js

Код: Выделить всё

this.$outerContainer.animate({width:d,height:b},this.options.resizeDuration,swing);
Последний раз редактировалось Valery 21.12.2015 11:05, всего редактировалось 1 раз.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

Content - pPGallery для Joomla 3.2 Fix Lightbox2

Сообщение Valery »

Пофиксил ошибку разворачивания картинки на полный экран в Lightbox2:
lightbox.css стиль lb-outerContainer удалить нах:
  width: 250px;
  height: 250px;
Теперь pPGallery на Joomla 3.2 работает как положено.
Вложение в пред. сообщении обновил.
Последний раз редактировалось Valery 05.12.2013 10:39, всего редактировалось 1 раз.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.
Аватара пользователя
ivan-ch
Пассажир
Пассажир
Сообщения: 4
На борту с: 10.04.2015 06:00

Re: Плагин создания галереи в материале pPGallery для Joomla 1.5 - 2.5 - 3.2 наладка допилка

Сообщение ivan-ch »

Приветствую уважаемый! Решили использовать ваш переделанный модуль. На сайте образовательной организации с его помощью отображаем студенческую газету. Есть одна просьба. Хотелось бы чтобы при No. of thumbnails=1 в самом лайтбоксе отображались все фото, которые есть в каталоге. А сейчас получается что при No. of thumbnails=1 отображается 1 картинка и при щелчке по ней отображается так же одна, без возможности просмотреть все остальные, если выставить например не 1, а 10 то картинки стрелками перелистываются. Но 10 эскизов страниц журнала смотрятся некрасиво и неестественно, в самый раз 1 картинка первой страницы  :cool:
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

Re: Плагин создания галереи в материале pPGallery для Joomla 1.5 - 2.5 - 3.2 наладка допилка

Сообщение Valery »

При клике по фото открывается следующая. По вариациям и усовершенствованиям - не ко мне. Я только плагин допилил, чтобы он заработал на Joomla 3xx. :)
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.
Аватара пользователя
ivan-ch
Пассажир
Пассажир
Сообщения: 4
На борту с: 10.04.2015 06:00

Re: Плагин создания галереи в материале pPGallery для Joomla 1.5 - 2.5 - 3.2 наладка допилка

Сообщение ivan-ch »

так дело то в том, что если в настройках выставить только 1 эскиз, то по фото уже не щелкается и стрелок влево-вправо не появляется.
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

Re: Плагин создания галереи в материале pPGallery для Joomla 1.5 - 2.5 - 3.2 наладка допилка

Сообщение Valery »

только 1 эскиз - что тогда перелистывать? Естественно будет только 1 фото.

У меня ведь на сайте (ссыли на пример выше), да и здесь на форуме - все перелистывается.
Вам нужно подключить lightbox2.
Дайте ссылку что ли на сайт посмотреть где это, ну и настройки сообщите какие сделали.
Последний раз редактировалось Valery 28.07.2015 08:27, всего редактировалось 1 раз.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.
Аватара пользователя
ivan-ch
Пассажир
Пассажир
Сообщения: 4
На борту с: 10.04.2015 06:00

Re: Плагин создания галереи в материале pPGallery для Joomla 1.5 - 2.5 - 3.2 наладка допилка

Сообщение ivan-ch »

Внешняя ссылка
правда я расстроился после вашего последнего поста и в данный момент реализация студенческой газеты немного на другом модуле, плюс автостарт первого изображения. пусть и костыль, но вроде бы поставленную задачу реализовал. остается совсем немного- заставить встроенный в joomla litebox перелистывать изображения, они так же не хотят листаться, и открываются каждый по одному. это если закрыть litebox который запускается автоматом, и мышкой открыть любое из изображений
Последний раз редактировалось ivan-ch 11.04.2015 04:40, всего редактировалось 1 раз.
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22268
На борту с: 07.02.2005 10:00
Награды: 5
Из: Тридевятое царство

Re: Плагин создания галереи в материале pPGallery для Joomla 1.5 - 2.5 - 3.2 наладка допилка

Сообщение Valery »

Ну и где там галерея картинок? Там пустая страница.
Дело плагина - генерировать превьюшки нужного размера, выводить к ним alt и title, и выводить все это в материале.
Перелистыванием же занимается lightbox2 при наличии параметра data-lightbox="тут_параметр" для группы изображений.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.