Как добавить полноразмерный плагин tinymce в стандартный редактор tinymce в WordPress для плагина?

Я хочу использовать полнофункциональный плагин tinymce, который обычно входит в стандартную установку tinymce.

чтобы добавить полный плагин страницы tinymce, я попытался добавить следующее:

<?php
    function myformatTinyMCE($in) {
         $in['remove_linebreaks']=false;
         $in['gecko_spellcheck']=false;
         $in['keep_styles']=true;
         $in['accessibility_focus']=true;
         $in['tabfocus_elements']='major-publishing-actions';
         $in['media_strict']=false;
         $in['paste_remove_styles']=false;
         $in['paste_remove_spans']=false;
         $in['paste_strip_class_attributes']='none';
         $in['paste_text_use_dialog']=true;
         $in['wpeditimage_disable_captions']=true;
         $in['plugins']='tabfocus,paste,media,fullscreen,wordpress,wpeditimage,wpgallery,wplink,wpdialogs,wpfullscreen';

         $in['wpautop']=true;
         $in['apply_source_formatting']=false;
         $in['toolbar1']='bold,italic,strikethrough,bullist,numlist,blockquote,hr,alignleft,aligncenter,alignright,link,unlink,wp_more,spellchecker,wp_fullscreen,wp_adv ';
         $in['toolbar2']='formatselect,underline,alignjustify,forecolor,pastetext,removeformat,charmap,outdent,indent,undo,redo,wp_help ';
         $in['toolbar3']='';
         $in['toolbar4']='';
         return $in;
    }
    $settings = array('textarea_name'=>'template');
    wp_editor( get_option('html_template'), 'htmlemaileditor', $settings );
?>

Однако, после проверки, это делает так, что tinymce ищет полноразмерный плагин tinymce, который не существует, как и ожидалось /wp-includes/js/tinymce/plugins/fullpage/plugin.min.js).

Затем я попытался загрузить tinymce и извлечь только каталог плагинов для полной страницы и поместить этот плагин в мой плагин WordPress, который я создаю по пути /fullpage_plugin/plugin.min.js, Затем я попытался сослаться на него следующим образом:

<?PHP
add_filter('mce_external_plugins', 'myplugin_register_tinymce_javascript');

function myplugin_register_tinymce_javascript($plugin_array) {
   $plugin_array['myplugin'] = plugins_url('/fullpage_plugin/plugin.min.js',__file__);
   return $plugin_array;
}
?>

Он действительно видит файл, однако по какой-то причине tinymce все еще ищет плагин в (/wp-includes/js/tinymce/plugins/fullpage/plugin.min.js)

Кто-нибудь, возможно, знает, как правильно включить поддержку полной страницы для стандартного tinymce wp_editor, включенного в WordPress 3.9.1?

Спасибо!

1 ответ

Следуя примеру в WordPress Codex, я заменил этот код:

<?PHP
add_filter('mce_external_plugins', 'myplugin_register_tinymce_javascript');

function myplugin_register_tinymce_javascript($plugin_array) {
   $plugin_array['myplugin'] = plugins_url('/fullpage_plugin/plugin.min.js',__file__);
   return $plugin_array;
}
?>

К следующему коду:

<?PHP
add_filter('mce_external_plugins', 'my_custom_plugins');

function my_custom_plugins () {
     $plugins = array('fullpage'); //Add any more plugins you want to load here
     $plugins_array = array();

     //Build the response - the key is the plugin name, value is the URL to the plugin JS
     foreach ($plugins as $plugin ) {
          $plugins_array[ $plugin ] = plugins_url('tinymce/', __FILE__) . $plugin . '/plugin.min.js';
     }
     return $plugins_array;
}
?>

И изменил файл plugin.min.js на соответствующий путь.

Оно работает!

Другие вопросы по тегам