Contributors: dpe415
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=DJKSKHJWYAWDU
Tags: widget, widgets, posts, categories, tags, recent posts, thumbnails, custom post types, custom taxonomies, feature image
Requires at least: 3.2
Tested up to: 3.9
Stable tag: 3.3
License: GPL2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
An advanced posts display widget with many options. Display posts in your sidebars any way you’d like!
The default Recent Posts widget is exceptionally basic. I always find myself in need of a way to easily display a selection of posts from any combination post type or taxonomy. Hence, Flexible Post Widget.
Flexible Posts Widget (FPW) is more than just a simple alternative to the default Recent Posts widget. With many per-instance options it is highly customizable and allows advanced users to display the resulting posts virtually any way imaginable.
flexible-posts-widget folder to the /wp-content/plugins/ directory.flexible-posts-widget in the root of your theme folder.widget.php from within the plugin’s views folder into your theme’s new flexible-posts-widget folder.widget.php template file to a name of your choice (to use different templates for each widget instance).my-themes-widget.phpThe third option (tab) available for getting posts is directly with a list of post IDs. If there is a value in this field, any settings in the “Post Type” or “Taxonomy & Term” tabs will be ignored and all public post types will be queried for the specific post IDs provided. All the other widget options (Display, Thumbnails and Template settings) will still be applied.
Per a WordPress support thread:
Go to Posts in your WordPress admin, and click the post you need the ID of. Then, if you look in the address bar of your browser, you’ll see something like this:
http://example.com/wp-admin/post.php?post=1280&action=edit
The number, in this case 1280, is the post ID.
You’ll want to create a custom HTML template by following the instructions and then you can use the standard WordPress Custom Field functions the same way you would if you were editing your theme’s other template files.
A simple code example for a custom field named “test_field” might look like the following:
$test_field_value = get_post_meta( get_the_ID(), 'test_field', true );
echo $test_field_value;
FPW intentionally does NOT add any styling of it’s own. To adjust the font size, color, alignment, image size, etc. of any output from this widget, you’ll need to edit your theme’s styles.
FPW does not add styles or scripts to your public theme. The plugin is intentionally designed to work within your existing theme. FPW does add one stylesheet and one JavaScript to the Widgets page in wp-admin to help with the administration of any FPWs in use.
I’d love to support more languages. The plugin’s POT file is available with the download. Feel free to post PO & MO files for your language to a new forum thread and I’ll get them added to the plugin.
To get answers to your questions, request help or submit a bug report, please start a new forum thread.
When upgrading from one major version to another (version 1.x to version 2.x to version 3.x, etc), please remember to verify your settings for any existing widgets. Not all settings combinations will be saved after a major release upgrade.
When upgrading between major releases (version 1.x to version 2.x to version 3.x, etc), please remember to verify your settings for any existing widgets. Not all settings combinations will be saved after a major release upgrade.
FPW comes with a default template for the widget output. If you would like to alter the widget display code, create a new folder called flexible-posts-widget in your template directory and copy over the “views/widget.php” file.
Edit the new file in your theme to your desired HTML layout. Please do not edit the one in the plugin folder as that will cause conflicts when you update the plugin to the latest release.
post__in). (Props: @cinus89)dpe_fpw_args to filter the query vars before submitting the query and 'dpe_fpw_template_' . [$template_name] to filter the selected template.