Intereting Posts
используя wp_insert_post внутри настраиваемого мета-окна Поддерживает ли поддержка WordPress использование именованных каналов в операционной системе Windows? Можно ли удалить поле имени пользователя на странице регистрации? Если да, то как? Содержимое, не показанное на некоторых старых браузерах и мобильных устройствах (SGS3) Проблема с форматом массива данных Детские страницы с одинаковым слизнем Просмотр сообщений по тегам на странице Отображение одного и того же меню в нескольких местах Является ли jQuery включенным в WordPress по умолчанию? Использование фильтров таблиц списка для всех настраиваемых типов сообщений есть ли какие-либо недостатки для увеличения количества последних элементов в фиде Ссылка на все сообщения (включая все категории) Различные предварительные настройки как включить файл манифеста json в плагин wp Структура сайта в отношении пользовательских типов сообщений и таксономий

Добавить кнопки быстрого вызова в редактор HTML

Я пытаюсь выяснить, как изменить редактор HTML в WordPress; на изображении ниже вы можете увидеть снимок экрана редактора и кнопки сверху. Можно ли добавить новые кнопки? Я хотел бы добавить кнопку, которая будет вставлять теги "" и некоторые пользовательские теги короткого кода. Я знаю, что это невозможно, но кто-нибудь знает, как это сделать?

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

Solutions Collecting From Web of "Добавить кнопки быстрого вызова в редактор HTML"

Загрузите и установите Редактор HTML Reloaded Plugin и перейдите на страницу настроек, и вы можете добавить свои собственные новые кнопки.

http://wordpress.org/extend/plugins/html-editor-reloaded/

Если он становится слишком сложным и сложным, вы можете просто добавить новые кнопки с помощью jQuery. Просто клонируйте существующую или создайте новую кнопку и добавьте ее на панель инструментов редактора. Вы можете обернуть javascript с помощью php-функции и запустить ее в нижнем колонтитуле или что-то еще.

Или вы можете использовать функцию edButton. Вот небольшой и быстрый письменный пример добавления кнопок p и pre.

// Add buttons to html editor add_action('admin_print_footer_scripts','eg_quicktags'); function eg_quicktags() { ?> <script type="text/javascript" charset="utf-8"> buttonA = edButtons.length; edButtons[edButtons.length] = new edButton('ed_paragraph','p','<p>','</p><br />','p'); buttonB = edButtons.length; edButtons[edButtons.length] = new edButton('ed_pre','pre','<pre lang="php">','</pre>','r'); jQuery(document).ready(function($){ jQuery("#ed_toolbar").append('<input type="button" value="p" id="ed_paragraph" class="ed_button" onclick="edInsertTag(edCanvas, buttonA);" title="p" />'); jQuery("#ed_toolbar").append('<input type="button" value="pre" id="ed_pre" class="ed_button" onclick="edInsertTag(edCanvas, buttonB);" title="pre" />'); }); </script> <?php } 

EDIT: в WordPress 3.3 (и выше) добавлено добавление quicktag. Однако, ленивое решение edButton как-то работает, некоторые плагины могут его отменить.

Новый и правильный способ добавления новых кнопок в редактор html выглядит так:

 // Add buttons to html editor add_action('admin_print_footer_scripts','eg_quicktags'); function eg_quicktags() { ?> <script type="text/javascript" charset="utf-8"> /* Adding Quicktag buttons to the editor WordPress ver. 3.3 and above * - Button HTML ID (required) * - Button display, value="" attribute (required) * - Opening Tag (required) * - Closing Tag (required) * - Access key, accesskey="" attribute for the button (optional) * - Title, title="" attribute (optional) * - Priority/position on bar, 1-9 = first, 11-19 = second, 21-29 = third, etc. (optional) */ QTags.addButton( 'eg_paragraph', 'p', '<p>', '</p>', 'p' ); QTags.addButton( 'eg_pre', 'pre','<pre lang="php">', '</pre>', 'q' ); </script> <?php } 

Я не знаю, добавлены ли QTags в WordPress Codex, поэтому я добавил необходимые параметры в раздел комментария кода.

См. Следующее в wp-includes/js/quicktags.dev.js

 /** * Main API function for adding a button to Quicktags * * Adds qt.Button or qt.TagButton depending on the args. The first three args are always required. * To be able to add button(s) to Quicktags, your script should be enqueued as dependent * on "quicktags" and outputted in the footer. If you are echoing JS directly from PHP, * use add_action( 'admin_print_footer_scripts', 'output_my_js', 100 ) or add_action( 'wp_footer', 'output_my_js', 100 ) * * Minimum required to add a button that calls an external function: * QTags.addButton( 'my_id', 'my button', my_callback ); * function my_callback() { alert('yeah!'); } * * Minimum required to add a button that inserts a tag: * QTags.addButton( 'my_id', 'my button', '<span>', '</span>' ); * QTags.addButton( 'my_id2', 'my button', '<br />' ); * * @param id string required Button HTML ID * @param display string required Button's value="..." * @param arg1 string || function required Either a starting tag to be inserted like "<span>" or a callback that is executed when the button is clicked. * @param arg2 string optional Ending tag like "</span>" * @param access_key string optional Access key for the button. * @param title string optional Button's title="..." * @param priority int optional Number representing the desired position of the button in the toolbar. 1 - 9 = first, 11 - 19 = second, 21 - 29 = third, etc. * @param instance string optional Limit the button to a specifric instance of Quicktags, add to all instances if not present. * @return mixed null or the button object that is needed for back-compat. */ qt.addButton = function( id, display, arg1, arg2, access_key, title, priority, instance ) { 

Это может быть полезно и для некоторых …

http://scribu.net/wordpress/right-way-to-add-custom-quicktags.html

Вам нужно использовать tinymce api, чтобы добавить кнопки в редакторе http://codex.wordpress.org/TinyMCE_Custom_Buttons

РЕДАКТИРОВАТЬ

О, подождите: вы используете редактор HTML. Следующий фильтр предназначен для добавления кнопок в редактор Visual .

Почти каждая ссылка, которую я могу найти, дает инструкции по редактированию quicktags.js (и на самом деле это то, что я использовал), но я не рекомендую редактировать файлы ядра. Я нашел этот (полностью непроверенный) плагин, который предназначен для изменения / добавления кнопок быстрого запуска HTML-редактора.

ОРИГИНАЛЬНЫЙ ОТВЕТ

Вы можете добавлять кнопки в строки 1, 2 или 3 строки.

Вот пример того, как добавить кнопки в строку 3:

 function mytheme_mce_buttons_row_3( $buttons ) { $buttons[] = 'fontselect'; $buttons[] = 'fontsizeselect'; $buttons[] = 'code'; $buttons[] = 'sup'; $buttons[] = 'sub'; $buttons[] = 'backcolor'; $buttons[] = 'separator'; $buttons[] = 'hr'; $buttons[] = 'wp_page'; return $buttons; } add_filter( 'mce_buttons_3', 'mytheme_mce_buttons_row_3' ); 

Очевидно, вы использовали бы 'mce_buttons_1' для добавления кнопок в строку 1 и 'mce_buttons_2' для добавления кнопок в строку 2.

Если вы хотите добавить свою собственную, произвольную кнопку, вам нужно передать разметку кнопки в массив, а не только имя тега HTML.

Вот мой пример того, как добавлять кнопки & & в текст редактора wp

добавьте этот код в functions.php и сохраните файл после проверки текста редактора

я надеюсь, помощь u ^^

 /*-----------------------------------------------*/ /* Add Text Editor Buttons /*-----------------------------------------------*/ function urban_add_quicktags() { //check to see if the 'quicktags' script is in use to avoid errors if (wp_script_is('quicktags')){ ?> <script type="text/javascript"> QTags.addButton( 'h4-subheader', 'SubHeader4', '<h4>', '</h4>', '4', 'Sub Header', 1 ); QTags.addButton( 'h3-subheader', 'SubHeader3', '<h3>', '</h3>', '3', 'Sub Header', 2 ); QTags.addButton( 'bold', '<b>', '<b>', '</b>', '3', 'Paraphraph', 3 ); </script> <?php } } //Print to admin footer add_action( 'admin_print_footer_scripts', 'urban_add_quicktags' );