Создание плагина галереи для WordPress

Создание плагина галереи для WordPress
Среди большого количества плагинов галереи для wordpress достаточно сложно выбрать то, что нужно именно вашему блогу. Поэтому чтобы не утруждаться в поисках, было решено создать свой плагин, который будет отличаться, прежде всего, простотой работы как со стороны Front End, так и со стороны Back End.


Для того чтобы создать плагин на WordPress достаточно всего одного файла в одной папке, имеющей одноименное название плагина. Итак, назовем плагин галереи: wp-gallery-list — и оно должно быть уникальным. Создадим папку wp-gallery-list в папке plugins wordpress и создадим файл wp-gallery-list.php, который будет содержать основной код.

Заголовок плагина, который содержит стандартную информацию о плагине для wordpress выглядит следующим образом:

Этого достаточно чтобы система wordpress распознала содержимое как плагин. Теперь приступим к функциям, которые будет выполнять сам плагин. Плагин будет выполнять простые функции по заполнению информации из админ панели с помощью текстовых полей, загрузка и редактирование изображений будет происходить стандартными средствами wordpress. Отображение галереи во фронт офисе будет происходить списком по шаблону с использованием lightbox. Галерею можно вставить в любую часть записи или страницы.

Код, который будет отвечать за административную часть, выглядит следующим образом:

В первых строчках кода, определяются константы путей и типов, которые будут использоваться в последующем коде. Затем подключаются действия к прописанным функциям во втором параметре функции add_action(). В данном коде используются следующие действия:

1. init — срабатывает после окончания загрузки wordpress, но перед передачей заголовков.
2. admin_head — срабатывает между тегами head административной панели.
3. save_post — срабатывает, когда запись или страница создается или изменяется.

Ниже идут функции, которые описывают эти действия. Функция wgl_create_post_type() содержит в своем составе функцию register_post_type(), которая в свою очередь создает или модифицирует тип записи галереи согласно вводимым параметрам. Она же вызывает дополнительную функцию wgl_add_url_box(), которая служит для вывода дополнительных полей для сохранения ссылок изображений. Функция wgl_posttype_icon() подгружает стили для административной части галереи. Функция wgl_save_postdata() создает, удаляет, сохраняет записи галереи.

В результате такого кода управление через админ панель имеет такой вид:

Вид плагина галереи в админ панели для WordPress

Вид заполняемых полей плагина галереи в админ панели для WordPress

Загрузка и масштабирование изображений происходит через встроенный браузер-редактор wordpress:

Масштабирование изображений галереи в админ панели для WordPress

После того как изображения готовы, остается только вставить нужные ссылки в соответствующие поля для вывода изображений:

Заполнение полей плагина галереи в админ панели для WordPress

Готовая галерея для вывода изображений в админ панели для WordPress

Для отображения галереи на страницах или записях используем Shortcode API, а именно функцию add_shortcode(), где указывается краткое название вызова, которое будет вставляться на страницы или записи, а также функция, которая убедит отвечать за вывод содержимого:

В первых строчках подключаются действия по выводу стилей и скриптов. Показана функция wpgallerylist_shortcode() которая вызывается в нашем контенте и выводит содержимое галереи по заданному шаблону. Для отображения галереи на странице или записи нужно разместить вызов: [wpgallerylist]. Как результат будет отображение галереи:

Готовый плагин галереи для вывода изображений для WordPress

Готовый плагин галереи для вывода изображений для WordPress

Скачать галерею здесь:

[download id=»842″ template=»wp-gallery-list»]

 

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

12 комментариев к записи “Создание плагина галереи для WordPress”

  1. Edward:

    Не могу понять почему у меня не вводятся url для маленькой и большой картинок или их надо копировать из свойств изображения и самостоятельно вставлять?

  2. Edward:

    Большое спасибо. Мне очень понравилась статья и помогла мне в решении моей задачи. Все же хотел спросить можно ли сделать так, чтобы путь для маленькой и большой картинок вставлялся автоматически, когда я исполоьзую опцию вставить в запись?

    • Плагин бесплатный и существует в том виде какой он есть, доработок по нему не предвидится.

  3. Edward:

    Спасибо большое.

  4. Vladimir:

    Добрый день. Возникла небольшая проблема, после активации плагина не работает визуальный редактор и не отображается библиотека. Версия WP 4.1.1. Скажите в чем проблема?

  5. Vladimir:

    Это связано както с новой версией WP?

    • На данный момент у меня версия 4.1.1 и работает нормально.

      • Vladimir:

        А еще вопрос. Например я хочу чтобы post_content выезжал при клике на картинку вот такой код, но он не работает. Я могу както получить через jQuery этот post_content?
        <![CDATA[
        jQuery(function() {
        jQuery("#wpgallery li").click(function(){
        jQuery("»).slideToggle();
        });
        });
        // ]]>
        ‘;

  6. Vladimir:

    С этим разобрался. А еще вопрос. Я хочу чтобы при клике на картинку выезжал блок контента. Я могу както через jquery получить контент привязанный именно к этой картинке? Можно както получить этот магический post_content? Вот кусок кода.
    jQuery(function() {
    jQuery(«#wpgallery li»).click(function(){
    jQuery(«»).slideToggle();

  7. Вася:

    Зачем это $_GET[‘post_type’]?

  8. Владимир:

    Спасибо за труды! Но не айс! Ваш плагин формирует новую страницу с префиксом /wgl/… , а как известно дубли страниц — это не есть хорошо !
    Удачи Вам!

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *