Обновления plugina References, v1.1

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

References в плане доработок — это такая заброшка, которую я делал в рамках доработок сайта obrazovanie66.ru. Там требовалось установить множество связей между разными типами публикаций, а стандартного функционала не было.

Но недавно в support форум написал один чувак и попросил сразу кучу доработок, которые я бы сам вряд ли стал делать для себя (меня всё устраивало). Таким образом, пользователь подопнул прогресс доработок.

В итоге в версию 1.1 были добавлены два существенный дополнения — набор API функций и поддержка shortcode

API функции

Плагин получил набор собственный функций я-ля API. Они позволяют, в дополнении к настройке из админки, конфигурировать связи из PHP кода, к примеру, после регистрации кастомных типов материалов и работать собственно с данными.

Все функции являются статикой класса REFShraAPI. Вот их список и краткое описание (подробнее смотрите в коде файла модуля references.php).

REFShraAPI::config_load($postType = NULL, $refKey = NULL);
// Возвращает текущий массив конфигурации связей. Параметры позволяют отфильтровать список.

REFShraAPI::config_add($postType, $refKey, $linkedTypes, $title)
// Добавляет/Обновляет связь.

REFShraAPI::config_remove($postType, $refKey);
// Удаляет связь (но не трогает данные, которые храняются в post meta) по паре postType / refKey.

REFShraAPI::get($postID = NULL);
// Получает список связей для указанного post->ID. Если ID не указан, функция пытается получить текущий ID сама.

REFShraAPI::update($postID = NULL, $refkey, $postIDs);
// Обновляет данные для связей указанного материала.

Shortcode REF

В плагин добавлена поддержка шот-кода ref. Этот шоткод позволяет вставить список ссылок в нужное место статьи в виде unordered list (<ul>…</ul>). Шоткод может принимать два атрибута и позволяет зацепиться с помощью двух фильтров (apply_filter).

[ref id=»POST_ID» key=»REFERENCE_KEY»]

Т.е есть возможность указать напрямую ID публикации и ключ связи. Если атрибуты не заданы, то используется текущая публикация и выводятся списки всех связей.

Фильтр reference_shortcode_items

Первый фильтр вызывается для массива ссылок, предоставляя возможность переопределить его. Элементы массива — объекты вида:

Если вы захотите поменять данные, то вам нужно будет добавить код вида:

Фильтр reference_shortcode_output

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

Мало букафф? Читайте есчо !

Ошибка формирования чека в best2pay для WooCommerce при использовании купонов — разбор и решение

Январь 29, 2026 г.

В одном из проектов столкнулся с проблемой формирования фискального чека в модуле оплаты best2pay для WooCommerce. Ошибка проявлялась не всегда, а только при использовании промокодов и нескольких товаров в корзине. Формально платеж проходил, но строки ...

Читать

Устанавливаем, настраиваем, русифицируем WP-POLLs плагин для пользовательских голосований в WP

Июль 20, 2016 г.

В репозитории плагинов Wordpress вы найдете много готовых плагинов, которые позволят вам проводить опросы/голосования на сайте. Почему стоит выбрать WP-polls? Плагин прост, функционален и переведен на многие языки. То на сколько он оказался востребован ...

Читать

Хлебные крошки, версия 1.2

Июль 8, 2018 г.

Очередное обновление WP плагина Genzel Breadcrumbs. Версия 1.2. Что нового? Переработана логика "монтирования" Монтирование позволяет задать несколько условий в части выражения "what" (что монтировать?). К примеру, можно указать что монтировать ...

Читать

Добавить favicon в шаблон на WP

Февраль 25, 2023 г.

Обычно настройки шаблона позволяют установить иконку через админ панель. Но если такой опции нет, то всегда можно добавить favicon программно. Для начала поместите вашу иконку favicon.png в каталог темы. Современные браузеры поддерживают разные ...

Читать
 

Комментарии к «Обновления plugina References, v1.1»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: