Как установить плагин (дополнение) для редактора Tiny MCE в wpForo?
Приветствую! Помогите кто чем может пожалуйста)
Нашёл отличный движок для форумов Вордпресс - wpForo. Но есть в нём один неприятный косячок... Встроенный текстовый редактор TinyMCE с очень скудным функционалом. В теории, расширить возможности редактора можно с помощью плагинов TinyMCE которые доступны бесплатно на сайте разработчика, например мне нужен следующий плагин https://www.tiny.cloud/docs/plugins/opensource/cod.... На этом же сайте есть инструкция по установке плагинов, но я совсем рамы не соберу как её использовать в моём случае.
То что я успел найти, это код для расширения функционала редактора TinyMCE в wpForo:
add_filter( 'wpforo_editor_settings', function( $settings ){ if ( empty( $settings['tinymce'] ) || ! is_array( $settings['tinymce'] ) ) $settings['tinymce'] = []; $settings['plugins'] = 'compat3x,fullscreen,hr,paste,textcolor,lists,table,visualblocks,visualchars,insertdatetime,charmap,searchreplace,anchor,advlist,codesample, wordcount'; $settings['tinymce']['toolbar1'] = 'fontsizeselect,fontselect,bold,italic,underline,strikethrough,forecolor,backcolor,bullist,numlist,hr,alignleft,aligncenter,alignright,alignjustify,subscript,superscript,outdent,indent,link,unlink,blockquote,wpf_spoil,undo,redo,pastetext,source_code,fullscreencut,removeformat,table,insertdatetime,charmap,styleselect,searchreplace,anchor,codesample,emoticons, wordcount'; return $settings; }); |
add_filter( 'wpforo_editor_settings', function( $settings ){ if ( empty( $settings['tinymce'] ) || ! is_array( $settings['tinymce'] ) ) $settings['tinymce'] = []; $settings['plugins'] = 'compat3x,fullscreen,hr,paste,textcolor,lists,table,visualblocks,visualchars,insertdatetime,charmap,searchreplace,anchor,advlist,codesample, wordcount'; $settings['tinymce']['toolbar1'] = 'fontsizeselect,fontselect,bold,italic,underline,strikethrough,forecolor,backcolor,bullist,numlist,hr,alignleft,aligncenter,alignright,alignjustify,subscript,superscript,outdent,indent,link,unlink,blockquote,wpf_spoil,undo,redo,pastetext,source_code,fullscreencut,removeformat,table,insertdatetime,charmap,styleselect,searchreplace,anchor,codesample,emoticons, wordcount'; return $settings; });
С помощью него мне удалось добавить функционал плагинов которые шли в наборе. Файлы плагинов находятся wp-includejstinymceplugins и в каждой папке лежит файл plugin.js в котором сам плагин и прописан. Но никаких подобных файлов я не нашёл в описании плагина на сайте. В инструкции, скорее всего, интеграция в самописный сайт, а под CMS не адаптировано.
Если кто сталкивался с подобным или поможет в решить вопрос, буду очень благодарен!
Дополнительно:
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
В wpForo встроенный редактор может быть TinyMCE, но это не значит, что любой плагин TinyMCE можно просто положить в папку и он заработает. Нужно подключить plugin script к конкретному экземпляру редактора, а wpForo может инициализировать редактор со своими настройками.
Если wpForo использует стандартный WordPress
wp_editor(), можно попробовать подключить внешний TinyMCE plugin через фильтры WordPress:add_filter('mce_external_plugins', function ($plugins) { $plugins['myplugin'] = get_stylesheet_directory_uri() . '/tinymce/myplugin/plugin.min.js'; return $plugins; }); add_filter('mce_buttons', function ($buttons) { $buttons[] = 'myplugin'; return $buttons; });
Но если wpForo переопределяет настройки редактора или использует свой init, этот код может не затронуть форумный редактор.
Начните с проверки: появляется ли плагин в обычном редакторе WordPress. Если да, но не появляется в wpForo — значит нужно искать hooks именно wpForo. У wpForo есть свои фильтры и настройки editor toolbar, и правильнее вмешиваться через них, а не глобально ломать TinyMCE на всём сайте.
Также учтите безопасность. Форумный редактор доступен пользователям, а не только администраторам. Если добавить кнопки HTML/iframe/script без фильтрации, можно открыть XSS. Даже если TinyMCE показывает кнопку, WordPress/wpForo потом может вырезать теги при сохранении.
Проверьте документацию wpForo по editor toolbar и allowed HTML. Иногда нужная функция уже есть в настройках форума или расширениях wpForo.
Практический путь:
Если задача — просто расширить форматирование, безопаснее использовать готовые настройки/аддоны wpForo, чем подключать произвольный TinyMCE plugin вручную.