Ready to get started?Download WordPress

Plugin Directory

Black Studio TinyMCE Widget

Adds a WYSIWYG widget based on the standard TinyMCE WordPress visual editor.


If you are experiencing issues with the plugin, check our support forum, but please read entirely these FAQ before posting a new topic in the forum. Most of the times issues are caused by incompatibility with other plugins or themes, which don't comply with WordPress coding standars and thus may prevent our plugin from working as expected. If you have any issues with the plugin, please do the following:

  1. Ensure the you have understood the purpose of the plugin. It only adds the ability to use the visual editor (TinyMCE) in widgets as you do in posts and pages, but it doesn't alter the editor behavior or functions. So if you are experiencing issues with the editor even when editing posts or pages, they're definitely not related to our plugin (unless you're using some additional plugins that provides widgets support for pages, i.e. Page Builder).
  2. Ensure that you are running the latest versions of both WordPress and the plugin.
  3. Search in our support forum for threads with similar issues.
  4. Disable all other plugins and switch to a WordPress default theme for a while. If the problem persists, open a topic in the forum (see below for instructions). Otherwise enable the other plugins ony by one and figure out which one is causing the issue, then post to the support forum mentioning it. Please see Conflict Diagnosis Guide for WordPress plugins for further info.

When you post a message in the support forum please provide the following information:

  • Description of the problem and steps to reproduce it
  • Error messages if any, in particular in browser's javascript console
  • Browser and Operating System in use
  • WordPress version in use
  • WordPress theme in use
  • WordPress plugins causing conflicts if any
  • A link to a screenshot if it can be useful to undesrtand the problem

Widgets disappeared after migrating or changing the site URL

When dealing with a WordPress site URL change it is necessary to face the "serialized fields" issue: data may become corrupted if using a simple search/replace (see the Codex for further info). This is not an issue specifically related to our plugin, but it affects all the parts (plugins, themes and WordPress core files too) that use serialized data archiviation. When changing the site URL, the recommended way is to use the Search and Replace for WordPress Databases Script, as suggested by the Codex.

How to translate widgets using WPML

The current version of Black Studio TinyMCE Widget plugin works together with the WPML String translation plugin. To translate a widget created with Black Studio TinyMCE Widget plugin you have to create it on the widgets panel and then go to WPML -> String translation and translate the title and text from there (unfortunately the translation textarea has not the visual editor). Note: If you installed WPML after the creation of the widgets, just re-save them and they will appear on the String translation list.

How to embed video and other contents

WordPress has a nice autoembed feature that allows you to embed videos and other stuff in an easy way, by just putting the URL in the content area. This is also possible for widgets created with this plugin, but for best results it is recommended to put the URL inside an [embed] shortcode. Example:


Ensure that the URL has not an hyperlink on it. Alternatively, if you don't want to use [embed] shortcode, ensure that the URL is not surrounded by a <p> tag, which is added automatically by the WYSIWYG editor (switch to HTML mode to remove enclosing <p> tags).

How to customize widget HTML markup

Most of the HTML markup around widgets is generated by WordPress and you can control it using the proper arguments (class, before_widget, after_widget, before_title, after_title) passed to the register_sidebar function (this is usually done by your theme). The only piece of HTML code added by the plugin is there for compatibility with the markup of native WordPress text widgets, and it is the following:

<div class="textwidget"> ... widget text ... </div>

You may customize it using the black_studio_tinymce_before_text and black_studio_tinymce_after_text filter hooks. They both take two parameters, the first one is the default text and the second is the widget instance. See examples below.

Example 1: Custom markup

add_filter( 'black_studio_tinymce_before_text', 'my_widget_before_text', 10, 2 );
function my_widget_before_text( $before_text, $instance ) {
    return '<div class="myclass">';
add_filter( 'black_studio_tinymce_after_text', 'my_widget_after_text', 10, 2 );
function my_widget_after_text( $after_text, $instance ) {
    return '';

Example 2: Totally remove markup

add_filter( 'black_studio_tinymce_before_text', '__return_empty_string' );
add_filter( 'black_studio_tinymce_after_text', '__return_empty_string' );

Requires: 3.0 or higher
Compatible up to: 4.0
Last Updated: 2014-7-25
Downloads: 761,733


4 stars
4.8 out of 5 stars


10 of 25 support threads in the last two months have been resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,2,2 100,1,1 100,1,1 50,2,1 100,4,4 50,2,1 50,2,1 100,1,1
100,2,2 100,2,2 75,4,3 100,1,1 100,1,1
71,7,5 81,21,17
100,10,10 100,3,3 100,2,2 100,1,1
100,2,2 33,3,1
80,5,4 100,1,1 100,12,12 0,1,0
75,4,3 100,1,1 100,3,3 100,4,4 100,1,1
67,6,4 100,7,7
100,4,4 80,5,4
0,1,0 100,7,7 83,6,5
100,1,1 100,2,2 50,2,1 100,1,1 100,1,1