Skip to content

Commit f76d032

Browse files
committed
DOC-3202: copy edits, improvements based on feedback.
1 parent 05e3196 commit f76d032

File tree

2 files changed

+192
-58
lines changed

2 files changed

+192
-58
lines changed

modules/ROOT/pages/migration-from-4x.adoc

Lines changed: 75 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -29,24 +29,64 @@ content_css: "dark",
2929

3030
=== Plugin Ecosystem
3131

32-
// The contextmenu plugin was absorbed into core, the options still works, see https://www.tiny.cloud/docs/tinymce/latest/contextmenu/. not sure why this is mentioned as removed.
33-
* **Removed**: `colorpicker`, `contextmenu`, `imagetools`, `legacyoutput`, `bbcode`, `fullpage`, `template`, `print`, `spellchecker`, and `tabfocus` plugins.
34-
* **Core Integrations**: Many plugins are now part of the core (e.g., `paste`, `hr`, `noneditable`, `table`).
35-
* **Premium Only**: Plugins like `spellchecker`, `tableofcontents`, `mediaembed` are now premium.
32+
The {productname} plugin ecosystem was significantly restructured in version 6.0, with several plugins being removed, folded into the core, or reclassified as premium features. The following breakdown clarifies the status of each affected plugin.
3633

37-
Plugin Migration Examples:
34+
* **Removed Plugins** (no longer available as of {productname} 6.0):
35+
** `colorpicker`: Deprecated in 5.0; functionality absorbed into core. Removed in 6.0.
36+
** `contextmenu`: Deprecated in version 5.0 following the integration of context menu functionality into the core editor. Removed in version 6.0. For more information, see the link:https://www.tiny.cloud/docs/tinymce/latest/contextmenu/[contextmenu documentation].
37+
** `tabfocus`: Removed in 6.0. Keyboard navigation via Tab is now handled by the browser and editor core.
38+
** `bbcode`: Deprecated in 5.9.0. Removed in 6.0.
39+
** `fullpage`: Deprecated in 5.9.0. Removed in 6.0.
40+
** `legacyoutput`: Deprecated in 5.9.0. Removed in 6.0.
41+
** `spellchecker`: Deprecated in 5.9.0. Removed in 6.0. Use `browser_spellcheck: true` or the premium xref:introduction-to-tiny-spellchecker.adoc[Spell Checker] plugin.
42+
** `template`: Removed in {release-version}. Integrators are encouraged to migrate to the premium xref:advanced-templates.adoc[Templates] plugin.
3843

39-
* `contextmenu` (Removed in v5):
40-
** Replace with browser-native context menus or custom menu logic.
44+
* **Integrated into Core**:
45+
** `paste`, `hr`, `noneditable`, `table`, `print`, and `contextmenu`: These plugins were absorbed into the {productname} core and no longer require separate installation.
46+
47+
* **Now Premium Only**:
48+
49+
** `spellchecker`, `editimage`, `mediaembed`, `tableofcontents`: These features are available through premium plugins.
50+
51+
.Plugin Migration Examples
52+
53+
* `contextmenu` (removed in v6):
54+
** Use browser-native context menus or custom logic.
4155
** Consider using link:https://www.tiny.cloud/docs/tinymce/latest/apis/tinymce.editor.ui.registry/#addContextMenu[editor.ui.registry.addContextMenu] for custom right-click actions.
42-
* `bbcode` (Removed in v6):
43-
** Replace with custom parsing or server-side processing if needed.
44-
* `fullpage` (Removed in v6):
45-
** No direct replacement. Use custom templates or server-side processing for full HTML documents.
46-
* `template` (Removed in v{release-version}):
47-
** Use premium xref:advanced-templates.adoc[advtemplate] or implement custom modal dialogs for templating.
48-
* `textcolor` (Removed in v6):
49-
** Use `forecolor` and `backcolor` buttons instead.
56+
* `bbcode` (removed in v6):
57+
** Implement custom parsing or server-side processing if BBCode support is required.
58+
* `fullpage` (removed in v6):
59+
** Use custom templates or server-side logic to handle full HTML documents.
60+
* `template` (removed in v{release-version}):
61+
** Use the premium xref:advanced-templates.adoc[advtemplate] plugin or implement custom modal dialogs.
62+
* `textcolor` (removed in v6):
63+
** Use the `forecolor` and `backcolor` toolbar buttons for text color functionality.
64+
65+
[NOTE]
66+
====
67+
If you used the following toolbar buttons or menu options, they have changed names across major {productname} versions. Please refer to the release notes for each version for complete migration details.
68+
69+
{productname} 5 → {productname} 6:
70+
* `formatselect` → `blocks` (toolbar item)
71+
* `blockformats` → `blocks` (menu item)
72+
* `styleselect` → `styles` (toolbar item)
73+
* `formats` → `styles` (menu item)
74+
* `fontselect` → `fontfamily` (toolbar item)
75+
* `fontformats` → `fontfamily` (menu item)
76+
* `fontsizeselect` → `fontsize` (toolbar item)
77+
* `fontsizes` → `fontsize` (menu item)
78+
* `imagetools` → `editimage` (plugin and related toolbar items)
79+
* `toc` → `tableofcontents` (plugin, menu item, and toolbar item)
80+
* `tocupdate` → `tableofcontentsupdate` (toolbar item)
81+
82+
{productname} 6 → {productname} 7:
83+
* `InsertOrderedList` and `InsertUnorderedList` commands were removed from the core and are now provided by the `lists` plugin.
84+
* Default text pattern triggers were updated to activate on `Space` instead of `Enter`. A `trigger` property was added to configure block-level text pattern behavior.
85+
86+
Refer to the latest release notes at https://www.tiny.cloud/docs/tinymce/latest/release-notes/ for further details.
87+
====
88+
89+
TIP: Always refer to the latest plugin documentation at link:https://www.tiny.cloud/docs/plugins/ for up-to-date availability and migration guidance.
5090

5191
.Example:
5292
[source,js]
@@ -61,7 +101,7 @@ plugins: ["lists link image table code"],
61101
=== Content Structure
62102

63103
* **Removed**: `forced_root_block: false`.
64-
** **Requirement**: All content must be wrapped in block elements (e.g., <p>).
104+
** **Requirement**: All editor content must be enclosed in block elements (e.g., `<p>`).
65105

66106
.Example:
67107
[source,js]
@@ -74,19 +114,30 @@ forced_root_block: "p"
74114

75115
=== Configuration Changes
76116

77-
// multiple toolbars still work https://www.tiny.cloud/docs/tinymce/latest/toolbar-configuration-options/#toolbarn not sure why this is mentioned as decricated
78-
* **Deprecated**: toolbar1, toolbar2, theme, skin, mobile configurations.
79-
** **New Options**: Consolidate toolbar settings and use new options like xref:content-filtering.adoc#sandbox-iframes[sandbox iframes], xref:content-filtering.adoc#convert-unsafe-embeds[convert_unsafe_embeds], and xref:accessibility.adoc#highlight_on_focus[highlight_on_focus].
117+
* **Removed in {productname} 6.0**: Legacy mobile theme was removed, but mobile-specific configuration is still supported through the `mobile` option.
118+
* **Default Changes in TinyMCE 7.0**:
119+
* xref:content-filtering.adoc#sandbox-iframes[sandbox iframes]: Now defaults to `true` (adds sandbox attribute to iframes)
120+
* xref:content-filtering.adoc#convert-unsafe-embeds[convert_unsafe_embeds]: Now defaults to `true` (converts object/embed elements to safer alternatives)
121+
* xref:accessibility.adoc#highlight_on_focus[highlight_on_focus]: Now defaults to `true` (adds focus outline to editors)
122+
* **New Options in {productname} 7.0**:
123+
* xref:license-key.adoc[license_key]: Must be set to `gpl` or a valid license key
124+
* xref:content-filtering.adoc#sandbox-iframes-exclusions[`sandbox_iframes_exclusions`]: List of URL hosts to exclude from iframe sandboxing
80125

81126
.Example:
82127
[source,js]
83128
----
84129
tinymce.init({
85-
selector: "textarea",
86-
toolbar: "undo redo | blocks | bold italic | alignleft aligncenter alignright alignjustify | outdent indent | removeformat",
87-
toolbar_mode: "floating",
88-
sandbox_iframes: true,
89-
convert_unsafe_embeds: true
130+
selector: "textarea",
131+
toolbar: "undo redo | blocks | bold italic | alignleft aligncenter alignright alignjustify | outdent indent | removeformat",
132+
toolbar_mode: "floating",
133+
license_key: "gpl", // Required in TinyMCE 7.0 if self-hosting
134+
// Security options now enabled by default in TinyMCE 7.0
135+
sandbox_iframes: true,
136+
convert_unsafe_embeds: true,
137+
// Optional: exclude specific domains from iframe sandboxing
138+
sandbox_iframes_exclusions: ["youtube.com", "vimeo.com"],
139+
// Accessibility improvement, now enabled by default
140+
highlight_on_focus: true
90141
});
91142
----
92143

modules/ROOT/pages/migration-from-5x.adoc

Lines changed: 117 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -28,71 +28,154 @@ content_css: "dark",
2828

2929
=== Plugin Ecosystem
3030

31-
// The contextmenu plugin was absorbed into core, the options still works, see https://www.tiny.cloud/docs/tinymce/latest/contextmenu/. not sure why this is mentioned as removed.
32-
* **Moved to Core**: `paste`, `hr`, `table`, `noneditable`, `nonbreaking`.
33-
* **Removed**: `imagetools`, `template`, `colorpicker`, `contextmenu`, `legacyoutput`.
34-
* **Premium Only**: `mediaembed`, `toc` (renamed to `tableofcontents`), `advtemplate`.
31+
=== Plugin Ecosystem
32+
33+
The {productname} plugin ecosystem underwent a significant overhaul starting in version 6.0, with many plugins either removed, integrated into the core, or made premium-only. The following summarizes these changes.
34+
35+
* **Removed Plugins**:
36+
** `colorpicker`: Deprecated in 5.0; functionality absorbed into core. Removed in 6.0.
37+
** `contextmenu`: Deprecated in version 5.0 following the integration of context menu functionality into the core editor. Removed in version 6.0. For more information, see the link:https://www.tiny.cloud/docs/tinymce/latest/contextmenu/[contextmenu documentation].
38+
** `tabfocus`: Removed in 6.0. Keyboard navigation via Tab is now handled by the browser and editor core.
39+
** `bbcode`: Deprecated in 5.9.0. Removed in 6.0.
40+
** `fullpage`: Deprecated in 5.9.0. Removed in 6.0.
41+
** `legacyoutput`: Deprecated in 5.9.0. Removed in 6.0.
42+
** `spellchecker`: Deprecated in 5.9.0. Removed in 6.0. Use `browser_spellcheck: true` or the premium xref:introduction-to-tiny-spellchecker.adoc[Spell Checker] plugin.
43+
** `template`: Removed in {release-version}. Integrators are encouraged to migrate to the premium xref:advanced-templates.adoc[Templates] plugin.
44+
** `imagetools`: Removed in 6.0.
45+
46+
* **Integrated into Core**:
47+
** `paste`, `hr`, `table`, `noneditable`, `nonbreaking`, `print`, and `contextmenu`: These plugins were absorbed into the {productname} core and no longer require separate installation.
48+
49+
* **Now Premium Only**:
50+
** `spellchecker`, `editimage`, `mediaembed`, `tableofcontents`: These features are available through premium plugins.
51+
** `toc`: Renamed to `tableofcontents` and now premium.
52+
** `advtemplate`: Replaces the `template` plugin for advanced templating use cases.
3553

36-
Plugin Migration Examples:
54+
.Plugin Migration Examples
3755

38-
* `contextmenu` (Removed in v5):
39-
** Replace with browser-native context menus or custom menu logic.
56+
* `contextmenu` (removed in v6):
57+
** Use browser-native context menus or custom logic.
4058
** Consider using link:https://www.tiny.cloud/docs/tinymce/latest/apis/tinymce.editor.ui.registry/#addContextMenu[editor.ui.registry.addContextMenu] for custom right-click actions.
41-
* `bbcode` (Removed in v6):
42-
** Replace with custom parsing or server-side processing if needed.
43-
* `fullpage` (Removed in v6):
44-
** No direct replacement. Use custom templates or server-side processing for full HTML documents.
45-
* `template` (Removed in v{release-version}):
46-
** Use premium xref:advanced-templates.adoc[advtemplate] or implement custom modal dialogs for templating.
47-
* `textcolor` (Removed in v6):
48-
** Use `forecolor` and `backcolor` buttons instead.
59+
* `bbcode` (removed in v6):
60+
** Implement custom parsing or server-side processing if BBCode support is required.
61+
* `fullpage` (removed in v6):
62+
** Use custom templates or server-side logic to handle full HTML documents.
63+
* `template` (removed in v{release-version}):
64+
** Use the premium xref:advanced-templates.adoc[advtemplate] plugin or implement custom modal dialogs.
65+
* `textcolor` (removed in v6):
66+
** Use the `forecolor` and `backcolor` toolbar buttons for text color functionality.
67+
68+
[NOTE]
69+
====
70+
If you used the following toolbar buttons or menu options, they have changed names across major {productname} versions. Please refer to the release notes for each version for complete migration details.
71+
72+
{productname} 5 → {productname} 6:
73+
* `formatselect` → `blocks` (toolbar item)
74+
* `blockformats` → `blocks` (menu item)
75+
* `styleselect` → `styles` (toolbar item)
76+
* `formats` → `styles` (menu item)
77+
* `fontselect` → `fontfamily` (toolbar item)
78+
* `fontformats` → `fontfamily` (menu item)
79+
* `fontsizeselect` → `fontsize` (toolbar item)
80+
* `fontsizes` → `fontsize` (menu item)
81+
* `imagetools` → `editimage` (plugin and related toolbar items)
82+
* `toc` → `tableofcontents` (plugin, menu item, and toolbar item)
83+
* `tocupdate` → `tableofcontentsupdate` (toolbar item)
84+
85+
{productname} 6 → {productname} 7:
86+
* `InsertOrderedList` and `InsertUnorderedList` commands were removed from the core and are now provided by the `lists` plugin.
87+
* Default text pattern triggers were updated to activate on `Space` instead of `Enter`. A `trigger` property was added to configure block-level text pattern behavior.
88+
89+
Refer to the latest release notes at https://www.tiny.cloud/docs/tinymce/latest/release-notes/ for further details.
90+
====
91+
92+
TIP: Always refer to the latest plugin documentation at link:https://www.tiny.cloud/docs/plugins/ for up-to-date availability and migration guidance.
4993

5094
.Example:
5195
[source,js]
5296
----
5397
tinymce.init({
54-
selector: "textarea",
55-
toolbar: "undo redo | forecolor backcolor | bold italic | alignleft aligncenter alignright alignjustify",
56-
plugins: ["lists link image table code"],
98+
selector: "textarea",
99+
toolbar: "undo redo | forecolor backcolor | bold italic | alignleft aligncenter alignright alignjustify",
100+
plugins: ["lists link image table code"]
57101
});
58102
----
59103

60104
=== Content Structure
61105

62106
* **Removed**: `forced_root_block: false`.
63-
** **Requirement**: All content must be wrapped in block elements (e.g., `<p>`).
107+
** **Requirement**: All editor content must be enclosed in block elements (e.g., `<p>`).
64108

65109
.Example:
66110
[source,js]
67111
----
68112
tinymce.init({
69-
selector: "textarea",
70-
forced_root_block: "p"
113+
selector: "textarea",
114+
forced_root_block: "p"
71115
});
72116
----
73117

74-
=== API and Initialization Changes
118+
=== Configuration Changes
119+
120+
* **Removed in {productname} 6.0**: Legacy mobile theme was removed, but mobile-specific configuration is still supported through the `mobile` option.
121+
122+
* **UI API Updates**:
123+
** Update custom plugins to use `+editor.ui.registry.*+`.
124+
** Replace deprecated methods like `+editor.addButton+`, `+editor.addMenuItem+`, and `+editor.windowManager.open+`.
75125

76-
// multiple toolbars still work https://www.tiny.cloud/docs/tinymce/latest/toolbar-configuration-options/#toolbarn not sure why this is mentioned as decricated
77-
* **Deprecated**: toolbar1, toolbar2, theme, skin, mobile configurations.
78-
* **New Options**: Consolidate toolbar settings and use new options like xref:content-filtering.adoc#sandbox-iframes[sandbox iframes], xref:content-filtering.adoc#convert-unsafe-embeds[convert_unsafe_embeds], and xref:accessibility.adoc#highlight_on_focus[highlight_on_focus].
79-
* **UI API Updates**: Rewrite custom plugins using the `editor.ui.registry.*` API. Replace methods like `editor.addButton`, `editor.addMenuItem`, and `editor.windowManager.open`.
80-
* **Promise-based Methods**: `media_url_resolver` now returns a Promise, requiring async handling.
81-
* **Obsolete Options**: Remove `force_hex_color` and update `table_responsive_width` to `table_sizing_mode`.
126+
* **Promise-Based Methods**:
127+
** `media_url_resolver` now requires a `Promise` return for asynchronous handling.
128+
129+
* **Removed Options**:
130+
** `force_hex_color` has been removed. Use standard CSS color declarations.
131+
** `table_responsive_width` replaced by `table_sizing_mode`.
132+
133+
* **Default Changes in TinyMCE 7.0**:
134+
* xref:content-filtering.adoc#sandbox-iframes[sandbox iframes]: Now defaults to `true` (adds sandbox attribute to iframes)
135+
* xref:content-filtering.adoc#convert-unsafe-embeds[convert_unsafe_embeds]: Now defaults to `true` (converts object/embed elements to safer alternatives)
136+
* xref:accessibility.adoc#highlight_on_focus[highlight_on_focus]: Now defaults to `true` (adds focus outline to editors)
137+
138+
* **New Options in {productname} 7.0**:
139+
* xref:license-key.adoc[license_key]: Must be set to `gpl` or a valid license key
140+
* xref:content-filtering.adoc#sandbox-iframes-exclusions[`sandbox_iframes_exclusions`]: List of URL hosts to exclude from iframe sandboxing
82141

83142
.Example:
84143
[source,js]
85144
----
86145
tinymce.init({
87-
selector: "textarea",
88-
toolbar: "undo redo | blocks | bold italic | alignleft aligncenter alignright alignjustify | outdent indent | removeformat",
89-
toolbar_mode: "floating",
90-
sandbox_iframes: true,
91-
convert_unsafe_embeds: true,
92-
highlight_on_focus: true
146+
selector: "textarea",
147+
toolbar: "undo redo | blocks | bold italic | alignleft aligncenter alignright alignjustify | outdent indent | removeformat",
148+
toolbar_mode: "floating",
149+
license_key: "gpl", // Required in TinyMCE 7.0 if self-hosting
150+
// Security options now enabled by default in TinyMCE 7.0
151+
sandbox_iframes: true,
152+
convert_unsafe_embeds: true,
153+
// Optional: exclude specific domains from iframe sandboxing
154+
sandbox_iframes_exclusions: ["youtube.com", "vimeo.com"],
155+
// Accessibility improvement, now enabled by default
156+
highlight_on_focus: true
93157
});
94158
----
95159

160+
TIP: For up-to-date plugin availability and configuration references, see link:https://www.tiny.cloud/docs/plugins/.
161+
162+
[NOTE]
163+
====
164+
Refer to version-specific release notes for changes in toolbar button names and command availability across versions 5, 6, and 7. For example:
165+
166+
{productname} 5 → {productname} 6:
167+
* `formatselect` → `blocks`
168+
* `styleselect` → `styles`
169+
* `fontselect` → `fontfamily`
170+
* `fontsizeselect` → `fontsize`
171+
* `imagetools` → `editimage`
172+
* `toc` → `tableofcontents`
173+
174+
{productname} 6 → {productname} 7:
175+
* `InsertOrderedList` / `InsertUnorderedList` commands removed from core (use `lists` plugin).
176+
* Default text pattern triggers updated from `Enter` to `Space`, configurable via `trigger`.
177+
====
178+
96179
=== Licensing Changes (GPL v2+ and Commercial)
97180

98181
* **Legacy License**: {productname} 5 was licensed under LGPL 2.1.

0 commit comments

Comments
 (0)