Intereting Posts
wp-login.php ampersand в url приводит к 404 wp_generate_attachment_metadata дает мне пустой массив Получить архив сообщений, разделенных таксономиями и субтаксонами Больше не добавлять элементы меню, связанные с сервером Можно ли заменить php-код на html? Перенаправить пользователя после входа / регистрации по всему миру Форма контакта WordPress 7: динамическое заполнение значения поля с помощью PHP Попытка показать ссылку «Использовать как изображение» из окна «Вложение» из сценария t31os Пользовательские фильтры внутри определенной категории? Замена строк в столбцах на переводную строку Показывать ошибочные сообщения о неправильном имени пользователя / пароле в пользовательской форме входа? получение текущего подэлемента из общих подэлементов в данном выпадающем меню (пользовательский ходок) Использовать wp_enqueue_scripts, а не wp_print_styles? Печать в WordPress и изотопах Обновить дату публикации каждого нового комментария?

Как добавить кнопку короткого кода в редактор TinyMCE?

Как сделать любой значок плагина в сообщении WordPress? Код, который я хочу вставить в код плагина, появится в столбце [wp-admin / post.php].

Как этот образ:

введите описание изображения здесь

Выход: если я нажимаю значок, он автоматически записывает [plugin] в сообщение, например:

введите описание изображения здесь

Solutions Collecting From Web of "Как добавить кнопку короткого кода в редактор TinyMCE?"

Чтобы добавить нашу кнопку в редактор TinyMCE, нам нужно сделать несколько вещей:

  1. Добавьте нашу кнопку на панель инструментов
  2. Зарегистрируйте плагин TinyMCE
  3. Создайте этот подключаемый модуль TinyMCE, который сообщает TinyMCE, что делать, когда нажимается кнопка.

Шаги №1 и №2

На этих этапах мы регистрируем наш подключаемый модуль TinyMCE, который будет wpse72394_register_tinymce_plugin() внутри javascript-файла по адресу 'path/to/shortcode.js' (см. wpse72394_register_tinymce_plugin() ).

  // init process for registering our button add_action('init', 'wpse72394_shortcode_button_init'); function wpse72394_shortcode_button_init() { //Abort early if the user will never see TinyMCE if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') && get_user_option('rich_editing') == 'true') return; //Add a callback to regiser our tinymce plugin add_filter("mce_external_plugins", "wpse72394_register_tinymce_plugin"); // Add a callback to add our button to the TinyMCE toolbar add_filter('mce_buttons', 'wpse72394_add_tinymce_button'); } //This callback registers our plug-in function wpse72394_register_tinymce_plugin($plugin_array) { $plugin_array['wpse72394_button'] = 'path/to/shortcode.js'; return $plugin_array; } //This callback adds our button to the toolbar function wpse72394_add_tinymce_button($buttons) { //Add the button ID to the $button array $buttons[] = "wpse72394_button"; return $buttons; } 

Шаг 3

Теперь нам нужно создать наш подключаемый модуль TinyMCE. Это будет идти в файле 'path/to/shortcode.js' (как указано на ранних этапах).

 jQuery(document).ready(function($) { tinymce.create('tinymce.plugins.wpse72394_plugin', { init : function(ed, url) { // Register command for when button is clicked ed.addCommand('wpse72394_insert_shortcode', function() { selected = tinyMCE.activeEditor.selection.getContent(); if( selected ){ //If text is selected when button is clicked //Wrap shortcode around it. content = '[shortcode]'+selected+'[/shortcode]'; }else{ content = '[shortcode]'; } tinymce.execCommand('mceInsertContent', false, content); }); // Register buttons - trigger above command when clicked ed.addButton('wpse72394_button', {title : 'Insert shortcode', cmd : 'wpse72394_insert_shortcode', image: url + '/path/to/image.png' }); }, }); // Register our TinyMCE plugin // first parameter is the button ID1 // second parameter must match the first parameter of the tinymce.create() function above tinymce.PluginManager.add('wpse72394_button', tinymce.plugins.wpse72394_plugin); }); 

Здесь слишком много, чтобы ответить на весь этот вопрос: ознакомьтесь с этим руководством: http://wp.smashingmagazine.com/2012/05/01/wordpress-shortcodes-complete-guide/

Вам нужно создать файл Javascript, который будет действовать с кнопки, которую вы регистрируете через WordPress, который вставляет кнопку TinyMCE в редактор.