Здравствуйте.
Хочу продублировать поле "Метки" на странице публикации. Функционал будет такой же, только поиск по другим данным.
Можно ли это сделать через хуки плагина?
Т.е. нужно поле "Метки2", в которое вместо action: rcl_get_like_tags подставлю свой поиск rcl_get_like_users.
Спасибо
Сначала читаем статью по теме
там подробно описан функционал произвольных полей плагина.
Далее добавляем через фильтр rcl_default_public_form_fields
произвольное дефолтное поле типа custom:
add_filter('rcl_default_public_form_fields', 'add_custom_default_field_for_public_form', 10, 2); function add_custom_default_field_for_public_form($fields, $post_type){ //тут указываем свой тип записи //или удаляем, если нужно для всех типов if($post_type != 'post') return $fields; $fields[] = array( 'type' => 'custom', 'slug' => 'my-field', 'title' => 'Мои Метки' ); return $fields; }
После этого в настройках формы публикации появится дефолтное поле "Мои метки", у него не будет настроек, его надо будет просто разместить в нужном месте формы.
Вторым шагом формируем контент в форме публикации на месте вывода этого поля:
add_filter('rcl_public_form_fields', 'filter_my_custom_field_in_public_form', 10, 2); function filter_my_custom_field_in_public_form($fields, $form){ global $user_ID; //тут указываем свой тип записи //или удаляем, если нужно для всех типов if($form->post_type != 'post') return $fields; foreach($fields as $k => $field){ if($field['slug'] != 'my-field') continue; $fields[$k]['content'] = 'тут контент, который хотим вывести ' . 'в форме публикации на месте этого поля'; } } return $fields; }
вам надо будет засунуть в значение ячейки content массива поля нужный контент, можно туда поместить все что угодно, в том числе форму, которая вам нужна, код формы находится в файле /wp-content/plugins/wp-recall-trunk/add-on/publicpost/classes/class-rcl-public-form.php
со строки 680. Можете скопировать код формы, заменить в тем функцию куда будут отправляться данные и разместить этот код в content поля в коде выше.
Все.