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

Категории группы: Полезное

Добавлено в закладки: 2

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

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

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

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

 

 

Однако, если мы выберем размещение личного кабинета через шорткод wp-recall, то появятся дополнительные настройки, зависимые от этого выбора

 

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

 

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

Рассмотрим код опции выбора способа размещения ЛК из общих настроек без функционала зависимости настроек друг от друга:

Итак, мы видим три настройки, две из которых будут зависимы от определенного выбора select первой настройки, т.е. пока не будет выбран второй option с значением 1 из первого select вторая и третья опции должны быть скрыты. Соответственно вторая и третья опции - это зависимый блок настроек.

Чтобы указать что первый select будет являться опцией определяющей появление зависимого от нее блока настроек необходимо указать для нее класс parent-select, а для весь зависимый блок настроек поместить в div с классом child-select. А чтобы указать его зависимость от первого selecta - его родителя, также присвоим класс одноименный тегу name родителя:

Осталось лишь определить значение value родителя зависимого блока при выборе которого будет производиться появление этого зависимого блока. Делается это путем присвоения созданному div идентификатора сформированного из тега name родителя и значения value при котором зависимый блок надо показывать:

Итак, в коде указано, что зависимый блок с классом child-select зависит от настройки с тегом name равном name_select и будет появляться в случае выбора option со значением 1

Соответственно весь код будет выглядеть так:

Данный прием позволяет прятать неиспользуемые настройки не захламляя страницу настроек плагина или дополнения.

Внимание! Статья устарела. Порядок добавления своих настроек, в том числе и дочерних-скрываемых, подробно описан в статье /dobavlyaem-nastrojki-k-svoemu-dopolneniyu-wp-recall/

10

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

не в сети 6 часов

Андрей CS

10k

пока занят

Комментарии: 1771Публикации: 410Регистрация: 30-11--0001Продаж/Покупок: 16573/114