Opened 14 years ago
Closed 14 years ago
#20030 closed defect (bug) (duplicate)
WP_Editor outputs external plugins multiple times
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Milestone: | Priority: | normal | |
| Severity: | normal | Version: | 3.3 |
| Component: | TinyMCE | Keywords: | has-patch |
| Focuses: | Cc: |
Description (last modified by )
Hello!
We are WP themes developers.
It appears that recent versions of WordPress, starting from 3.3 have a bug!
When there is a restriction on the server, the WP visual editor doesn't work.
It happens when a few shortcodes are launching, and we have more than 10 shortcodes in all our themes. When a new shortcode launches, previous one stays launched and finally there are two of them at once, and so on. Once launched shortcodes never turn off (the array never cleans up), but it keeps launching more and more.
on WordPress 3.2 - 3.2.1
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video",
"en");
tinymce.PluginManager.load("video",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio",
"en");
tinymce.PluginManager.load("audio",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post",
"en");
tinymce.PluginManager.load("post",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/email",
"en");
tinymce.PluginManager.load("email",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/email/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/map",
"en");
tinymce.PluginManager.load("map",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/map/editor_plugin.js.php");
from WordPress 3.3 - 3.3.1
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video",
"en");
tinymce.PluginManager.load("video",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video",
"en");
tinymce.PluginManager.load("video",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio",
"en");
tinymce.PluginManager.load("audio",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video",
"en");
tinymce.PluginManager.load("video",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio",
"en");
tinymce.PluginManager.load("audio",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post",
"en");
tinymce.PluginManager.load("post",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video",
"en");
tinymce.PluginManager.load("video",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio",
"en");
tinymce.PluginManager.load("audio",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post",
"en");
tinymce.PluginManager.load("post",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/email",
"en");
tinymce.PluginManager.load("email",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/email/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap",
"en");
tinymce.PluginManager.load("dropcap",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/dropcap/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button",
"en");
tinymce.PluginManager.load("button",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/button/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box",
"en");
tinymce.PluginManager.load("box",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/box/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab",
"en");
tinymce.PluginManager.load("tab",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/tab/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column",
"en");
tinymce.PluginManager.load("column",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/column/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider",
"en");
tinymce.PluginManager.load("divider",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/divider/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table",
"en");
tinymce.PluginManager.load("table",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/table/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video",
"en");
tinymce.PluginManager.load("video",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/video/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio",
"en");
tinymce.PluginManager.load("audio",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/audio/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post",
"en");
tinymce.PluginManager.load("post",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/post/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/email",
"en");
tinymce.PluginManager.load("email",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/email/editor_plugin.js.php");
tinyMCEPreInit.load_ext("http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/map",
"en");
tinymce.PluginManager.load("map",
"http://pacifico.cmsmasters.net/wp-content/themes/pacifico/theme/administrator/tinymce/map/editor_plugin.js.php");
file of init one of the shortcodes
<?php
/**
* @package WordPress
* @subpackage Pacifico
* @since Pacifico 1.0
*
* Audio Shortcodes & Quick Tags Register
* Created by CMSMasters
*
*/
if (!class_exists('CMSMastersAudio')) {
class CMSMastersAudio {
var $buttonName;
var $buttonTitle;
var $buttonArray;
function __construct() {
$this->buttonName = 'audio';
$this->buttonTitle = __('Audio', 'cmsmasters');
$this->buttonArray = array(
0 => array(__('HTML5 Audio', 'cmsmasters'), 'html5audio'),
1 => array(__('Single Audio Player', 'cmsmasters'),
'single_audio_player'),
2 => array(__('Multiple Audio Player', 'cmsmasters'),
'multiple_audio_player')
);
}
function addDropdown() {
if (!current_user_can('edit_posts') && !current_user_can('edit_pages')) {
return;
}
if (get_user_option('rich_editing') == 'true') {
add_filter('mce_external_plugins', array($this, 'registerTmcePlugin'));
add_filter('mce_buttons_4', array($this, 'registerButton'));
add_filter('wp_fullscreen_buttons', array($this, 'registerFscreenButton'));
}
}
function registerButton($buttons) {
array_push($buttons, $this->buttonName);
return $buttons;
}
function registerTmcePlugin($buttons) {
$buttons[$this->buttonName] = CMSMASTERS_ADMIN_TINYMCE . '/' .
$this->buttonName . '/editor_plugin.js.php';
return $buttons;
}
function registerFscreenButton($buttons) {
$buttons[] = 'separator';
foreach ($this->buttonArray as $val) {
$buttons[$val[1]] = array(
'title' => $val[0],
'onclick' => "tinyMCE.execCommand('" . $val[1] .
"_command');",
'both' => true
);
}
return $buttons;
}
function registerQtagPluginButton() {
wp_enqueue_script('cmsms_' . $this->buttonName .'_quicktag',
CMSMASTERS_ADMIN_TINYMCE . '/' . $this->buttonName .
'/quicktag_plugin.js.php', array('quicktags'));
}
}
}
if (!isset($cmsmasters_shortcode_audio)) {
$cmsmasters_shortcode_audio = new CMSMastersAudio();
add_action('admin_head', array($cmsmasters_shortcode_audio, 'addDropdown'));
add_action('admin_print_scripts',
array($cmsmasters_shortcode_audio, 'registerQtagPluginButton'));
}
?>
add_filter('mce_external_plugins', array($this,
'registerTmcePlugin')); <- this function (filter) are works wrong
We spent weeks on struggling to this WP bug, but we found that it's impossible to add "quicktags" and "tinyMCE" buttons to WP editor in other way, as WordPress allows only one way to implement that. We were hoping you will fix this bug, but it seems to be unnoticed.
Thanks
This occurs because WP_Editor::editor_settings() appends
$ext_pluginstoself::$ext_pluginswithout clearing the variable. So by the end of the loop$ext_pluginscontains the full output we desire (one entry per plugin), butself::$ext_pluginshas the first external plugin includecount( $ext_plugins )times. See http://core.trac.wordpress.org/browser/tags/3.3.1/wp-includes/class-wp-editor.php#L248.The patch attached moves the assignment to
self::$ext_pluginsout of the loop.A smaller test case:
function trac20030_mce_external_plugins( $plugins ) { $plugins['myplugin1'] = WP_PLUGIN_URL . '/myplugin1.js'; $plugins['myplugin2'] = WP_PLUGIN_URL . '/myplugin2.js'; return $plugins; } add_filter( 'mce_external_plugins', 'trac20030_mce_external_plugins' );Outputs this in current trunk:
tinyMCEPreInit.load_ext("http://wp.dev/wp-content/plugins", "en"); tinymce.PluginManager.load("myplugin1", "http://wp.dev/wp-content/plugins/myplugin1.js"); tinyMCEPreInit.load_ext("http://wp.dev/wp-content/plugins", "en"); tinymce.PluginManager.load("myplugin1", "http://wp.dev/wp-content/plugins/myplugin1.js"); tinyMCEPreInit.load_ext("http://wp.dev/wp-content/plugins", "en"); tinymce.PluginManager.load("myplugin2", "http://wp.dev/wp-content/plugins/myplugin2.js");Notice the extra entry for "myplugin1".