Шпаргалка по часто используемым функциям и хукам для WP-Recall при написании своего дополнения
При разработке я часто пытаюсь дословно вспомнить имя фильтра, хука или функции WP-Recall. Здесь они и будут собираться, и если их описание есть на CodeSeller - то будет ссылка на описание.
Добавляйте в закладки - коллекция будет пополняться.
p.s. скриншот выше - правда. Именно столько раз я использовал эти функции написав более 20000 строк в своих php файлах
Ссылки на коллекции:
- Глобальные переменные WP-Recall
- Сниппеты WP-Recall чтобы не потерять
- Сниппеты Prime Forum
- Знаете ли вы что… Факты о плагине WP-Recall и единая база для разработки под WP-Recall. Сервис CodeSeller.ru — Секреты, советы, рекомендации.
- Используем функционал шаблонов в плагине WP-Recall. Список шаблонов
- Создаём дополнение для плагина WP-Recall. Структура дополнений. Подключаем скрипты и стили. Ajax
- Всё о форме входа и регистрации WP-Recall — часть 1
- Всё о форме входа и регистрации WP-Recall — часть 2. Шаблоны, хуки, кастомизация
- js экшены и фильтры WP-Recall. Практическое применение
Глобальные переменные WP-Recall:
- $user_LK (число)
- Содержит id юзера, в чьем кабинете находимся.
- $rcl_office (число)
- Тоже что и $user_LK выше - получает id юзера, в чьем кабинете находимся.
- $active_addons (массив)
- Содержит данные о активированных аддонах. Информация из файла info.txt, id и полный путь на сервере до дополнения. Раньше использовал для проверки - активен ли доп.
Вместо него теперь удобней использовать функцию:rcl_exist_addon('слаг_дополнения')
- $rcl_user_URL (строка)
- Содержит урл до личного кабинета текущего юзера
- $rcl_options (массив)
- Содержит данные о всех глобальных настройках реколл. Вместо нее удобней использовать функцию:
rcl_get_option('имя_опции')
Функции WP-Recall:
rcl_get_option('$option_name', '$default')
- имя опции настроек, значение которой надо получить. Второй (необязательный аргумент) - значение по умолчанию, если опция пуста
rcl_is_office()
- функция возвращает true, если мы находимся в личном кабинете.
Передав туда $user_ID мы можем проверить, что мы в своем кабинете.
rcl_exist_addon('rcl-chat')
- функция возвращает true, если это дополнение активировано. Принимает id (слаг) нужного дополнения. Описание
rcl_tab($args);
- добавляем вкладку в ЛК. Описание
rcl_add_sub_tab($parent_tab_id,$subtab);
- добавляет дочернюю вкладку к существующей. Описание
rcl_block($place,$callback,$args);
- в личном кабинете сам кабинет разбит на блоки. Позволяет добавить что-то в нужную часть кабинета. Описание
rcl_get_include_template($temp_name, $path=false, $data = false)
- подключает WP-Recall шаблон. Описание функции. Функционал шаблонов в плагине WP-Recall и список шаблонов
rcl_format_url(get_author_posts_url($user_ID),'profile');
- Сформирует ссылку в личный кабинет или вкладку кабинета
В зависимости от вывода личного кабинета (шорткодом или через author.php) будет формироваться урл
Верно подставляться к вкладке & или ? (&tab=forum или ?tab=forum)
Вернет:
https://otshelnik-fm.ru/account/?user=1&tab=forum
или
https://otshelnik-fm.ru/author/wawan/?tab=forum
rcl_get_tab_permalink($author_id, 'chat');
- получим урл до кабинета прямиком на нужную вкладку. 1 аргумент - id пользователя в чей кабинет нам надо, 2 аргумент - идентификатор вкладки
rcl_mail($email, $title, $text);
- обертка для функции wp_mail, для отправки писем. Описание
$email - эл.почта на которую будет выслано письмо (обязательно)
$title - заголовок письма (обязательно)
$text - текст письма в html-формате (обязательно)
rcl_verify_ajax_nonce();
- проверяет безопасность ajax запроса. Почитать
rcl_bar_add_icon($item_id, $args);
- добавить иконку в реколлбар. Описание
Фильтры WP-Recall:
add_filter('rcl_inline_styles', 'function_name', 10, 2);
- фильтр первым аргументом отдает $styles, вторым $rgb значение цвета из админки.
Фильтр используется чтобы вставить свои inline стили
add_filter('rcl_tab_chat', 'function_name');
- динамический фильтр. Возвращает контент указанной вкладки ЛК. Формируется так: apply_filters('rcl_tab_'.$this->id, $content);
т.е. в имя фильтра после rcl_tab_ подставляем id вкладки, чей контент хотим получить
add_filter('rcl_public_form','function_name', 10, 2);
- добавить свои поля в форму публикации WP-Recall. 1-й аргумент - контент, 2-й - данные записи
и фильтр: rcl_public_form_fields
- руководство
add_filter('profile_options_rcl', 'function_name', 10, 2);
- когда в настройки профиля надо добавить свой блок. 1-аргумент контент, 2-й аргумент данные пользователя объект $userdata
add_filter('rcl_description_user','function_name',10, 2);
- позволяет добавить к блоку автора и в список пользователей дополнительную информацию. 1 аргумент - контент, 2-й идентификатор юзера
Экшены WP-Recall:
add_action('rcl_enqueue_scripts', 'function_name',10);
- для регистрации скриптов и стилей.
Внутри используем функции:
rcl_enqueue_script('unic_id_script', rcl_addon_url( 'script.js', __FILE__ ), false, true);
- последний аргумент true - грузить в подвале. Описание
rcl_enqueue_style('unic_id_style', rcl_addon_url('style.css', __FILE__), true);
- последний аргумент true - грузить в подвале. Описание
add_action('update_post_rcl','function_name',10,2);
- хук срабатывает в момент публикации записи из фронтенда. Первый аргумент id записи. 2-й аргумент - массив данных поста
add_action('rcl_cron_daily', 'function_name');
- повесить свою функцию на реколл крон. Выполняется раз в сутки. Описание
add_action('rcl_cron_twicedaily', 'function_name');
- повесить свою функцию на реколл крон. Выполняется два раза в сутки. Описание
add_action('rcl_cron_hourly', 'function_name');
- повесить свою функцию на реколл крон. Выполняется раз в час. Описание
add_action('rcl_confirm_registration', 'function_name',100);
- если в опциях WP-Recall стоит подтверждение регистрации - этот хук сработает если регу подтвердили успешно
Если вам есть какую функцию, хук или фильтр из самых вами используемых добавить сюда - пишите в комментариях
Ух ты, какой каталог получился, Владимир, спасибо.
Спасибо.
Увы у меня память не идеальная, поэтому и собрал всё в одном месте. Да и как запомнишь функцию которую, к примеру, за пару лет использовал раз 15-ть?