Widget Content Blocks


WYSIWYG Widgets or rich text widgets

This plugin adds so called “Widget Blocks” to your website which you can easily display in your widget areas.

You can create or edit the widget blocks just like you would edit any post or page, with all the default WordPress editing functions enabled. This way, you can use the visual editor that comes with WordPress to format your widgets. You can even use media uploading to insert images and so forth.


  • Create beautiful widgets without having to write HTML code
  • Easily insert media into your widget content
  • Add headings, lists, blockquotes and other HTML elements to your widgets using the WordPress visual editor
  • Use WP Links dialog to easily link to any of your pages or posts from a widget
  • Use shortcodes inside your widgets
  • Translation ready


If you have created your own language pack, or have an update of an existing one, you can send gettext PO and MO files to me so that I can bundle it into WYSIWYG Widgets. You can download the latest PO file here.

More information


  • Use the widget in one of your widget areas to show a widget block.
  • Edit the content of a WYSIWYG Widget just like you are used to edit posts.
  • Overview of created Widget Blocks.
  • Widget Blocks in the admin menu.


  1. Upload the contents of wysiwyg-widgets.zip to your plugins directory.
  2. Activate the plugin
  3. Create a Widget Block by going to Widget Blocks > Add New
  4. Go to Appearance > Widgets, drag the WYSIWYG Widget to one of your widget areas and select which Widget Block to display.
  5. (Optional) Go to the front-end of your website and enjoy your beautiful widget.


What does this plugin do?

This plugin creates a custom post type called “Widget Blocks” so you can create widget content just like you would create posts or pages. You can show these “Widget Blocks” by dragging a “WYSIWYG Widget” widget to one of your widget areas and selecting which widget block to display inside it.

Where do I create a Widget Block?

The plugin adds a menu to the Pages menu item. Just go to Pages > Widget Blocks and start creating beautiful widgets.

What does WYSIWYG mean?

What You See Is What You Get

Can I switch between ‘Visual’ and ‘HTML’ mode with this plugin?

Yes, all the default options that you are used to from the post editor are available for the widget editor.



ഏപ്രിൽ 7, 2024
Just works exactly how you’d like it to work. And.. easy to work with for editors, because they don’t have to deal with the widgets section to make a change, it’s just like editing a post.Thanks a lot!
ജനുവരി 13, 2023
Brilliant plugin.
ഒക്ടോബർ 9, 2017
I needed a WYSIWYG editor for widgets for my clients but needed a way to keep them from accidentally deleting the widget along with all the content. This is perfect implementation, thank you to the developer.
സെപ്റ്റംബർ 8, 2017
I used this to create a custom link widget – the default link widget just didn’t work for me. But I can see that Widget Content Blocks can be used to solve many widget problems. Highly recommended.
ഓഗസ്റ്റ്‌ 22, 2017
I use this plugin together with the Elementor page builder, and it works great. The advantage is, that my customers can edit their texts without bothering with the elementor UI, instead just use the usual editor. This is great!
മെയ്‌ 15, 2017
It makes it so easy to have WYSIWYG editable widgets and also use the blocks in my custom templates.
Read all 60 reviews

Contributors & Developers

“Widget Content Blocks” is open source software. The following people have contributed to this plugin.


“Widget Content Blocks” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Widget Content Blocks” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


2.3.10 – Feb 5, 2024

Version bump just to get rid of the “unmaintained” warning.

2.3.9 – November 11, 2019

Updated WordPress compatibility.

2.3.8 – October 25, 2017

Misc. textual improvements.

2.3.7 – August 29, 2017

Added German language file, thanks to Christian Gunther.

2.3.6 – September 29, 2016

Maintenance release. Mainly just removed some dead links from meta & getting rid of “not updated” notice. Happy widget blocking!

2.3.5 – March 18, 2015


  • Video URL’s on their own line will now autoembed


  • Code styling now adheres to WordPress coding standard

2.3.4 – December 20, 2013

  • Fixed: Paragraphs inside or after shortcodes
  • Improved: Changed widget name for more consistency

2.3.3 – November 18, 2013

  • Added: Italian translations, thanks to Tiziano D’Angelo
  • Improved: Code loading
  • Improved: added empty index.php files to prevent directory listings
  • Improved: all default WordPress’ post filters are now applied to the widget content as well.

2.3.2 – November 8, 2013

  • Improved: When show_title is false, (empty) title tags will not be displayed.

2.3.1 – November 6, 2013

2.3 – November 5, 2013

  • Improved: Title now changes with the Widget Block, no widget re-save necessary
  • Improved: Minor code improvements
  • Improved: Removed all third-party meta boxes from Edit Widget Block screen.
  • Improved: Plugin is now translation ready
  • Added: Dutch translation

2.2.6 – October 30, 2013

  • Fixed: Show title checkbox now defaults to a checked state.

2.2.5 – October 26, 2013

  • Added checkbox option to widget to hide the title.

2.2.4 – October 21, 2013

  • Moved menu item back to its own menu item
  • Widget title now defaults to the title of the selected Widget Block
  • Some textual improvements

2.2.3 – October 16, 2013

  • Moved menu item to pages to prevent capability problems
  • Removed WP SEO meta box from edit widget block screen


  • Improved: UI improvements, cleaned up admin area.
  • Improved: Minor code improvement


  • Improved: small code improvements
  • Improved: changed menu position


  • Fixed: shortcodes were not processed in v2.1.


  • Fixed: Social sharing buttons showing up after widget content.


  • Added: meta box in WYSIWYG Widget editor screen.
  • Added: debug messages for logged in administrators on frontend when no WYSIWYG Widget OR an invalid WYSIWYG Widget is selected.
  • Added: title is now optional for even more control. If empty, it won’t be shown. You are now no longer required to use the heading tag which is set in the widget options since you can use a (any) heading in your post.


  • Total rewrite WITHOUT backwards compatibility. Please back-up your existing WYSIWYG Widgets’ content before updating, you’ll need to recreate them. Don’t drag them to “deactivated widgets”, just copy & paste the HTML content somewhere.


  • Updated the plugin for WP 3.3. Broke backwards compatibility (on purpose), so when running WP 3.2.x and below: stick with version 1.1.1.


  • Temporary fix for WP 3.3+


  • Fixed problem with link dialog reloading page upon submit


  • Changed the way WYSIWYG Widget works, no more overlay, just a WYSIWYG editor in your widget form.
  • Fixed full-screen mode
  • Fixed link dialog for WP versions below 3.2
  • Fixed strange browser compatibility bug
  • Fixed inconstistent working
  • Added the ability to use shortcodes in WYSIWYG Widget’s text


  • Fixed small bug that broke the WP link dialog for WP versions older then 3.2
  • Fixed issue with lists and weird non-breaking spaces
  • Added compatibility with Dean’s FCKEditor for WordPress plugin
  • Improved JS

NOTE: In this version some things were changed regarding the auto-paragraphing. This is now being handled by TinyMCE instead of WordPress, so when updating please run trough your widgets to correct this. 🙂


  • Added backwards compatibility for WP installs below version 3.2 Sorry for the quick push!


  • Fixed issue for WP3.2 installs, wp_tiny_mce_preload_dialogs is no valid callback. Function got renamed.


  • Cleaned up code
  • Improved loading of TinyMCE
  • Fixed issue with RTL installs


  • Bugfix: Hided the #wp-link block, was appearing in footer on widgets.php page.
  • Improvement: Removed buttons added by external plugins, most likely causing issues. (eg Jetpack)
  • Improvement: Increase textarea size after opening WYSIWYG overlay.
  • Improvement: Use ‘escape’ key to close WYSIWYG editor overlay without saving changes.


  • Bugfix: Fixed undefined index in dvk-plugin-admin.php
  • Bugfix: Removed esc_textarea which caused TinyMCE to break
  • Improvement: Minor CSS and JS improvements, ‘Send to widget’ button is now always visible
  • Improvement: Added a widget description
  • Improvement: Now using the correct way to set widget form width and height


  • Bugfix: Fixed the default title, it’s now an empty string. (”)


  • Initial release