1ответ(ов) в теме
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
1
17:30
Версия WP-Recall: 16.4.7
Версия дополнения: 1.0.8

Добавить свою кнопку в форму публикации темы или сообщения на форуме и назначить для этой кнопки свое действие, достаточно просто. Для этого необходимо использовать существующий фильтр pfm_gtags. Данный фильтр передает массив опций кастомных кнопок редактора форума, который можно дополнить своим массивом, тем самым добавив нужную кнопку.
Для того, что узнать в каком именно виде необходимо формировать массив с данными для добавления кнопки, следует обратить внимание на функцию addButton из API HTML-редактора WordPress, именно на основе перечня аргументов передаваемых в эту функцию и нужно строить свой массив для передачи в фильтр.
Подробное описание по использованию данной функции дано по

Вы не можете просматривать опубликованные ссылки

.

Согласно приведенному по ссылке перечню аргументов мы также будем формировать массив аргументов кнопки по шаблону:

$button = array(id, display, arg1, arg2, access_key, title, priority);

где,

id - ID кнопки. Атрибут id HTML тега input: .
display - Название кнопки. Атрибут value HTML тега input: .
arg1 - Открывающий тег, который будет вставляться по нажатию, например: . Или название функции, которая будет выполнена, при клике - callback функция.
arg2 - Закрывающий тег, который будет вставляться по нажатию, например:
. Оставьте пустым, если тег не нужно закрывать, например: .
access_key - Короткий путь доступа к кнопке. Пишем какую-нибудь букву, например: s
title - Описание кнопки. Атрибут title HTML тега input: .
priority - Позиция кнопки среди других кнопок: 1-9 = первая, 11-19 = вторая, 21-29 = третья и т.д.

Перейдем от теории к практике. Добавим в редактор кнопку, которая по нажатию на нее будет добавлять в контент какой то шорткод - [short].

add_filter('pfm_gtags','editor_custom_button'); 
function editor_custom_button($qtags){
    
    $qtags[] = array('my_short', __('Шорткод'), '[short]', '', 'h', __('Описание к кнопке'), 100);

    return $qtags;
}

4
Тема закрыта. Публикация новых сообщений запрещена.