Intereting Posts
Предотвращать использование многосайтовых сайтов плагином Получить WP Navigation Menu из REST API V2 Как проверить, нет ли предыдущего или следующего изображения на странице вложений? AJAX против фрагментации кэширования для общего кэша W3 Как отправить электронную почту в виде тяжести? Получить сообщения для настраиваемого типа сообщений с WP_Query Комментарий, отображающий полное имя даже после установки другого отображаемого имени? Удаление истекших сообщений после нескольких дней после их истечения Как get_posts с эскизом сообщения? Как показать отображаемое изображение на странице сообщений панели управления пользовательского типа Сделать липкий пост при сохранении Как показать ссылку или кнопку «Читать дальше» в пользовательской полевой выдержке, если она меньше предела слова apply_filters в контент, но игнорировать короткие коды Экспортировать записи и несколько метаданных полей в .csv? _.omit не является функцией

Как добавить кнопку короткого кода в редактор 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 в редактор.