This plugin enables you to edit and display Content Blocks in a sidebar widget or using a shortcode.
The Content Blocks allows you to display the contents of a specific custom post in a widget on in the content area using a shortcode.
Even though you could use the text widget that comes with the default WordPress install, this plugin has some major benefits:
This plugin creates a ‘content_block’ custom post type. You can choose to either display the title on the page or use it to describe the contents and widget position of the content block. Note that these content blocks can only be displayed in the context of the page. I have added ‘public’ => false to the custom post type which means that it is not accessible outside the page context.
To add content to a widget, drag it to the required position in the sidebar and select the title of the custom post in the widget configuration.
Includes the following translations:
/wp-content/plugins/
folder.After activating the plugin a new post type called 'Content Blocks' is added.
The widget has a select box to choose the content block. Click on the 'Edit Content Block' link to edit the selected Content Block custom post.
You will find a button above the WYSIWYG editor that allows you to insert the content block using the shortcode.
After clicking the 'Add Content Block' button you can select a content block and insert the shortcode in the content area.
Of course you can always use the default text widget, but if you prefer to use the WYSIWYG editor or if you have multiple editors and you don’t want to give them administrator rights, it is recommended to use this plugin.
It is recommended to install the Widget Logic plugin, this will give you complete flexibility on widget placement.
This plugin has built-in support for the featured image functionality on the edit screen. Note that featured image will not be resized, so you will have to make sure it is the right size when uploading or restrict the image size via the stylesheet.
If your social media sharing plugin adds buttons to the widget areas you could check the ‘Do not apply content filters’ checkbox. Note that when this is done, WordPress will also stop adding paragraph tags to your text, so use this setting with caution. It is much better to ask the developer of the social media sharing buttons plugin to correctly use the content filters (see http://pippinsplugins.com/playing-nice-with-the-content-filter/ for more information on this). If you are embedding your content block with the shortcode, add the following: suppress_content_filters="yes"
Currently the shortcode function only outputs the post content and title of the content block, future support for displaying the attached featured image is being considered.
Yes, you can create your own template for the content blocks, you can do so by adding a file named custom-post-widget.php to your theme folder. More information about this can be found in this support topic
In these Gists you can find examples of templates for shortcodes and for widgets
Please post your feature request on the support forum
These new features are on the to-do list:
You can create your own widget template and upload this to your theme folder. See this support topic for more information about this feature.
You can make the post type public by adding the following code to your theme’s functions.php file:
function filter_content_block_init() {
$content_block_public = true;
return $content_block_public;
}
add_filter(‘content_block_post_type’,’filter_content_block_init’);
Alternatively you can use this third-party plugin.
Yes, v2.6 now gives you the option to use the content block’s url slug in the shortcode. Use the following syntax for doing this: [content_block slug=my-content-block]
.
Note that if you ever change the slug of a content block, the embedding no longer works. Therefore I recommend using the post ID instead (which never changes).
By default the shortcode adds a div around the content block with the class content_block. If you like, you can change this class by adding it to the shortcode: [content_block id=198 slug=our-wordpress-plugins class=my-class]
You can use the do_shortcode function for this: echo do_shortcode('[content_block id= ]');
See https://codex.wordpress.org/Function_Reference/do_shortcode for more information on this function.
Please create a support topic in the forum: https://wordpress.org/support/plugin/custom-post-widget
Creating and supporting this plugin takes up a lot of my free time, therefore I would highly appreciate it if you could take a couple of minutes to write a review. This will help other WordPress users to start using this plugin and keep me motivated to maintain and support it. Also, if you have a twitter, Facebook or Google+ account, it would be fantastic if you could share the link to this plugin!
WP 6.6 compatibility tested and confirmed
Changed constants for theme folder to use get_stylesheet_directory() and get_template_directory().
Changes to the shortcode function that allows for loading of a custom template file and the function that allows you to use a custom tag to wrap the content block and title. Note that this could cause issues if you are using a template that is not in your template folder.
WP 6.5 compatibility tested and confirmed
Fix for stripped html tags when using the suppress_content_filters option on the shortcode. As reported in the support forums: https://wordpress.org/support/topic/html-content-now-showing-as-text/
Added input sanitization on the shortcode arguments to prevent potential security issues.
Fix for PHP 8.1 notice passing null to parameter #1 ($datetime) of type string is deprecated
WP 6.3 compatibility tested and confirmed
WP 5.8 compatibility tested and confirmed
Bugfix for notice in shortcode.php
Thanks to Bruce from Ingeni Web Solutions it is now possible to use your own template for embedding the custom post shortcode.
Compatibility testing. Also tested on PHP8 and found no issues.
Spanish translation added and readme.txt file updates.
Minor bugfix and upgrade for the clipboard.js script. Thanks to https://wordpress.org/support/users/vikaspandeyd/ for reporting this!
You can now use a custom html tag to wrap the content block when using a shortcode. See https://wordpress.org/support/topic/add-support-for-spans/ for more information and usage.
Added Gutenberg compatibility for editing content blocks. This is for editing content blocks only. There is no block button yet for inserting a content block in the Gutenberg editor, so you will have to choose the ‘Shortcode’ widget and insert your content block shortcode there.
Added the option to show the featured image in when using the shortcode. Add featured_image=yes to the shortcode to show it: [content_block featured_image=yes]
. By default the medium image size is displayed, you can change it like this: [content_block featured_image=yes featured_image_size=full]
.
Tested for WordPress 4.8 compatibility.
Added html sanitizing to the Content Block post titles. Thanks to @palpatine1976 for bringing this to my attention.
Renamed the plugin to Content Blocks to better reflect the purpose.
Minor layout change to the Shortcodes meta box.
Removed the admin notice, added donation link to plugin overview page. Shortcodes are now displayed on the content block edit screen, thanks to Remkus for suggesting this feature.
Fix for minor compatibility issue when using the Slider Revolution plugin
You can now optionally show the post title when using the shortcode by adding title=yes
to the shortcode
Added Hebrew translation as provided by Daniel Cohen Gindi
Updated language files.
Added the option to suppress the content filters when using the shortcode. Thanks to adelval for providing the code, see https://wordpress.org/support/topic/add-option-to-not-apply-content-filters-in-shortcode?replies=4
Changed method for creating the widget in preparation of PHP7 support.
Added Czech translation.
Added Italian translation.
Updated branding and language files.
The shortcode now includes the slug of the content block (which is still optional), see https://wordpress.org/support/topic/shortcodes-using-slug-name-rather-than-id for more information on this.
The post status is now used for displaying the content blocks in the widget areas, only published content blocks are now displayed. Thanks to tmbdesign.co.uk for suggesting this change.
Added dismissable support notification.
Added the possibility for using the content block slug in the shortcode.
Changed the way the button above the content editor is inserted. For background see: https://wordpress.org/support/topic/soliloquy-conflict-1?replies=2
Added filter to ‘public’ value of the content_block post type to make it possible to use the Visual Composer plugin. See support topic: https://wordpress.org/support/topic/make-post-type-public
Changed require to require_once in custom-post-widget.php to solve a possible issue reported by John Sundberg.
Updated SE translation files as provided by Andreas Larsson.
Added ‘Content Block Information’ to overview page, updated styling to reflect new 3.8 interface and rewrote javaScript code for inserting shortcode tag
2.4.5 javaScript fix for inserting shortcode tag
Added unique ID to each content block that is inserted using the shortcode functionality
Changed the way the shortcode button above the editor is called.
You can now add a description to the content block to make it easier for content editors to find out where the block is displayed on the site. Thanks to Andreas Larsson the plugin now includes a Swedish translation.
Added the option to use your own widget template file as suggested by flynsarmy. See https://wordpress.org/support/topic/patch-custom-widget-frontends?replies=1 for more information.
Added pt_BR translation files as kindly provided by Ronaldo Chevalier.
Removed hardcoded plugins folder path
Removed call to CUSTOM_POST_WIDGET_DIR
Various bugfixes and improvements.
Replaced the deprecated media_buttons_context
filter with media_buttons
. Thanks to Baptiste Gaillard for letting me know about this.
Small fix for issue with the css filepath of the editor icon. Thanks to user zudobug for reporting this issue.
Updated Dutch translation file.
Fix for bug caused by the ‘Advanced Custom Fields’ plugin. Thanks to creativexperience for troubleshooting this issue.
Cleanup of lightbox popup, changed all instances of query_posts to get_post and get_posts.
Support for featured image in custom post widget area.
Changed shortcode button to reflect the new admin style of WordPress version 3.5.
Fix for error when using shortcode with the WPML plugin
Added featured image support and now using query_posts instead of get_post
Fixed debug notices when dragging a new content block to the widget areas and removed the add content block shortcode from the content block editing screen.
Added the option to disable apply_filters on the content to prevent issues with misbehaving plugins. I would have rather not added this, but it appears many plugin developers do not know how to properly use filters (see http://pippinsplugins.com/playing-nice-with-the-content-filter/).
Corrected a minor bug regarding translation strings.
Minor bugfix and added the French translation which was created by Alexandre Simard.
Now includes Polish language files as created by Kuba Skublicki.
The content blocks can now be translated using the WPML plugin, thanks to Jonathan Liuti.
Thanks to Vitaliy Kaplya (https://vitaliikaplia.com/) a Russian translation has been added to the plugin.
Minor bugfix for edit link in widget.
This release is to fix an issue with the WordPress plugin repository.
Added edit content block link to the widget editor and changed the ‘view content block’ message to include a ‘manage widgets’ link. The ‘Draft’ and ‘Preview’ buttons are now hidden via CSS, hopefully this will soon be default WordPress behaviour (see related ticket: https://core.trac.wordpress.org/ticket/18956).
Thanks to Julian Gardner-Hobbs for requesting this functionality.
The widget now emulates the $post loop. This means you can now make use of WordPress functionality such as inserting a [gallery]. Thanks to Jari Pennanen for providing the code.
Updated German translation and various bugfixes.
Added a button above to content editor to make it easier to add the shortcode (no need for looking up the id).
This release fixes all the debug error messages Yoast discovered when reviewing this plugin. As requested by Tony Allsopp the option of using the shortcode [content_block id= ] to pull in the content of a content block in a page or post has been added.
The Custom Post Widget plugin is now using the more efficient get_post instead of query_posts to display the content block on the page. A code example for this change has been graciously provided by Paul de Wouters.
Thanks to Caspar Huebinger the plugin now has its own icon and as requested by Stephen James the author field has been added to the Content Block edit screen.
The plugin has been translated into Dutch and German. Hat tip: Caspar Hübinger – glueckpress.com
Now the title of the content block is displayed in the admin interface to make it easy to manage the widgets.
The widget title now uses $before_title and $after_title to generate the appropriate tags to display it on the page. Hat tip: Etienne Proust.
Added a checkbox in the widget to make it possible to show the custom post title in the widget area
Added showposts=-1 to the post query to display more than 10 custom posts in the widget configuration select box.
Fixed screenshots for plugin directory
First release