Публикация в группе: Плагин WP-Recall - Личный кабинет на WordPress

Категории группы: Обновления

Приветствую!

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

На протяжении практически всех последних версий я старался сделать добавление своего дополнения или своей вкладки в личном кабинете как можно проще и понятнее. В этой версии, в этом направлении, сделан настоящий прорыв. В плагин были добавлены несколько новых функций, знание которых будет являться необходимым и достаточным условием для интеграции в плагин своего функционала или вывода произвольного контента в любом месте личного кабинета.

Итак, рассмотрим функцию добавления своей вкладки в ЛК:

add_tab_rcl($id,$callback,$name,$args);

данная функция имеет четыре аргумента:

$id - уникальный идентификатор вкладки

$callback - название функции, где формируется контент, выводимый во вкладке

$name - наименование вкладки, выводимое на кнопке, задействующей эту вкладку

$args - массив необязательных настроек

С этой функцией добавление новой вкладки в ЛК стало простым и незатейливым! Если раньше нам приходилось пользоваться не совсем удобными фильтрами WP и писать отдельные функции для формирования кнопки вкладки и самой вкладки, то теперь достаточно просто написать свою функцию с необходимым контентом, который мы собираемся выводить внутри нашей новой вкладки, прописать необходимые данные в функции add_tab_rcl() и этого будет достаточно!

Например, такой код

add_tab_rcl('new_tab','content_new_tab','Моя вкладка');
function content_new_tab($user_lk){
    return 'Тут контент новой вкладки';
}

создаст в личном кабинете новую кнопку "Моя вкладка" и новую вкладку к ней с текстом "Тут контент новой вкладки". Да, это все что потребуется сделать) Более подробно эта функция будет рассмотрена на странице хуков и функций плагина.

Пример создания своего дополнения с использованием нового функционала описан на в этой статье.

Перейдем ко второй функции облегчающей взаимодействие разработчиков с плагином Wp-Recall. Данная функция позволяет выводить содержимое произвольной функции в практически любом месте личного кабинета.

add_block_rcl($place,$callback,$args);

данная функция имеет следующие аргументы:

$place - область вывода контента в личном кабинете

$callback - название функции, где формируется контент для вывода

$args - массив необязательных настроек

Первым аргументом функции мы должны указать область вывода. Чтобы это сделать необходимо знать, что личный кабинет условно разделен на несколько областей. Вот их графическое представление:

2014-11-11 22-21-56 Андрей Plechev - Google Chrome

 

Мы видим шесть областей личного кабинета условные названия которых можно указывать в качестве областей вывода. Области before и after лежат за пределами личного кабинета пользователя. В зависимости от того какая область была указана при использовании функции add_block_rcl() будет зависить место вывода контента.

Рассмотрим такой код:

 add_block_rcl('content','new_block_lk'); 
 function new_block_lk($user_lk){
     return 'Тут выводимый текст блока';
 }

Данный код добавит контент нашей функции new_block_lk в область личного кабинета обозначенный как "CONTENT". И опять же этого будет достаточно, чтобы вывести свой текст или функциональный блок в личном кабинете! Более подробно данная функция будет расмотрена на странице хуков и функций плагина.

Сейчас в личном кабинете при выводе контента некоторых дополнений можно увидеть использование галереи, входящей в состав плагина Wp-Recall. Внедрение этого функционала стало ответом на необходимость более компактного вывода контента в личном кабинете. Использование данной галереи становиться возможным также через функцию add_block_rcl(), указав в его массиве настроек необходимую опцию, т.е. вы можете теперь сами указывать выводить контент вашего блока с помощью галереи или нет.

Две рассмотренные функции позволяют легко внедрять в личный кабинет пользователя свой текст или функционал. Все текущие версии дополнений базовой и расширенной конфигурации плагина Wp-Recall были обновлены и доработаны под этот функционал. Дополнения не обеспечивающие работу данных функций работать нормально не будут.

Следует знать что контент выводимый с помощью рассмотренного выше функционала будет автоматически оборачиваться в html-теги с нужными классами и идентификаторами, т.е. дополнительно оборачивать все в свои теги не требуется.

Благодаря более удобному функционалу добавления новых табов в личный кабинет, стало удобнее пользоваться различными способами загрузки этих табов. Например, вкладки не поддерживающие ajax-загрузку своего контента будут загружаться без ajax, просто перезагружая страницу выводя требуемый контент.

Наконец то удалось довести до ума подгрузку аватаров пользователей при использовании ajax-подгрузки контента. Если ранее изображение аватаров пользователей без установленной ими картинки подменялось безликим изображением силуэта, то теперь будет использоваться тот вид изображений, который вы указали для использования аватаров по умолчанию на своем сайте.

Было значительно доработано дополнение публикации в части отвечающей за создание своих произвольных полей к форме публикации. Допустим у вас на сайте уже действует функционал произвольных полей, которые используются для вывода какого то контента в записях вашего сайта. Теперь вы можете прикрепить любое уже действующее на скайте произвольное поле к форме публикации, чтобы в дальнейшем пользователи могли вносить какую то информацию в это поле. Для этого при создании новых полей формы достаточно указать значение ключа требуемого произвольного поля в качестве значения meta_key, создаваемого поля формы

2014-11-11 23-07-36 Форма публикации ‹ Плагины WordPress, разработка и продажа. — WordPress - Google Chrome

Если же значение meta_key не указывать, то оно будет сформировано автоматически.

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

2014-11-11 23-11-01 НАСТРОЙКИ ‹ Плагины WordPress, разработка и продажа. — WordPress - Google Chrome

По мере роста количества используемых дополнений Wp-Recall на сайте становится проблематичной процедура их массовой активации и деактивации. Больше этой проблемы не существует! В плагин была внедрена возможность массовой активации/деактивации дополнений отмеченных для этого галочкой

2014-11-11 23-38-17 Add-on менеджер ‹ Плагины WordPress, разработка и продажа. — WordPress - Google Chrome

 

Требуется сообщить об еще одном моменте. В этой версии изменился порядок хранения всех важных настроек как плагина, так и его крупных дополнений. Я позаботился о том, чтобы плагин сам проверил в какой форме храняться настройки в данный момент и если возникнет необходимость, то скрипт автоматически приведет настройки к требуемому виду. Очень надеюсь, что при переходе на данную версию никто ничего не заметит и все произойдет в фоновом режиме, но следует знать, как вести себя в ситуации, если произойдет сбой и вам покажется, что все настройки как плагина, так и его дополнений были утеряны.

1. Ни в коем случае не пересохраняйте настройки плагина, если не хотите их потерять!

2. Попробуйте еще раз перезагрузить страницу на которой находитесь, после чего проверьте настройки на их присутствие.

3. Если настройки так и не появились, то пришлите на почту support@codeseller.ru описание вашей проблемы и доступы к админке вашего сайта.

Высока вероятность, что это не потребуется, но я предупредил)

Перед обновление файлов плагина, плагин необходимо деактивировать!

56

Автор публикации

не в сети 4 часа

Андрей CS

12K
рассматриваю задания
Комментарии: 2744Публикации: 481Регистрация: 30-11--0001Продаж/Покупок: 0/0