Recent Posts Widget With Thumbnails

Description

List the most recent posts with post titles, thumbnails, excerpts, authors, categories, dates and more!

Although the plugin is built only for widget areas users reported that it works in Elementor and works in Oxygen. Whether it runs in other page builders is unknown. Please let me know in which page builder you were able to use the plugin successfully.

The plugin does not collect any personal data, so it is ready for EU General Data Protection Regulation (GDPR) compliance.

Lightweight, simple and effective

No huge widget with hundreds of options. This plugin is based on the well-known WordPress default widget ‘Recent Posts’ and extended to display more informations about the posts like e.g. thumbnails, excerpts and assigned categories. And it provides more options to build custom-taylored posts lists.

The thumbnails will be built from the featured image of a post or of the first image in the post content. If there is neither a featured image nor a content image then you can define a default thumbnail.

You can set the width and heigth of the thumbnails in the list. The thumbnails appear left-aligned to the post titles in left-to-right languages. In right-to-left languages they appear right-aligned.

What users wrote

What users filmed

Some users published video tutorials on YouTube:

Options you can set

  1. Title of the widget
  2. Number of listed posts
  3. Open post links in new windows
  4. Different options for post order and sorting
  5. Hide current post in list
  6. Show only sticky posts
  7. Hide sticky posts
  8. Keep sticky posts on top of the list if not hidden
  9. Hide post title
  10. Maximum length of post title
  11. Show post author name
  12. Label for the author names
  13. Show post categories
  14. Show post category names as links to their archives
  15. Label for the categories
  16. Show post date
  17. Show post excerpt
  18. Show number of comments
  19. Excerpt length
  20. Signs after excerpt
  21. Ignore post excerpt field as excerpt source (builds excerpts only from the post content)
  22. Ignore post content as excerpt source (builds excerpts only from the excerpt fields)
  23. Show posts of selected categories (or of all categories)
  24. Show post thumbnail (featured image)
  25. Registered thumbnail dimensions
  26. Thumbnail width in px
  27. Thumbnail height in px
  28. Keep aspect ratio of thumbnails
  29. Try to take the first post image as thumbnail
  30. Only use the first post image as thumbnail
  31. Use default thumbnail if no thumbnail is available
  32. Always use the default thumbnail
  33. Default thumbnail URL
  34. Alternative text of the default thumbnail
  35. Omit all alternative texts of the thumbnails for a better accessibility
  36. Print slugs of post categories in class attribute of LI elements
  37. Print inline CSS instead of creating a CSS file
  38. No CSS generation at all

Useful hints for developers: Supported Hooks

The plugin considers the output of actions hooked on:

  1. rpwwt_widget_posts_args
    • passed argument: the query arguments as an array
    • expected return value: an array of query arguments
  2. widget_title
    • passed arguments:
      1. the widget title as a string
      2. the widget settings as an array
      3. the widget base ID as a string
    • expected return value: a string
  3. rpwwt_excerpt_length
    • passed argument: the maximum number of characters of the post excerpt as an integer
    • expected return value: an integer
  4. rpwwt_excerpt_more
    • passed argument: the string to append after the post excerpt
    • expected return value: a string
  5. rpwwt_the_excerpt
    • passed arguments:
      1. the content of the post excerpt field as a string
      2. the post object
    • expected return value: a string
  6. the_excerpt
    • passed argument: the post escerpt as a string
    • expected return value: a string
  7. rpwwt_categories
    • passed argument: the category list of each post as a string
    • expected return value: a string
  8. rpwwt_list_cats
    • passed arguments:
      1. the category name as a string
      2. the category as an array
    • expected return value: a string

Useful hints for developers: Available CSS Selectors

To design the list and its items you can use these CSS selectors:

.rpwwt-widget: the element which contains the post list
.rpwwt-widget ul: the list which contains the list items
.rpwwt-widget ul li: the list item in the list
.rpwwt-widget ul li.rpwwt-sticky: the list item of a sticky post
.rpwwt-widget ul li a: link in the list
.rpwwt-widget ul li a img: linked image
.rpwwt-widget ul li a span.rpwwt-post-title: the post title
.rpwwt-widget ul li div.rpwwt-post-author: the post author
.rpwwt-widget ul li div.rpwwt-post-categories: the post category list
.rpwwt-widget ul li div.rpwwt-post-date: the post date
.rpwwt-widget ul li div.rpwwt-post-excerpt: the post excerpt
.rpwwt-widget ul li div.rpwwt-post-excerpt .rpwwt-post-excerpt-more: the "more" text following the excerpt.
.rpwwt-widget ul li div.rpwwt-post-comments-number: the number of comments

Languages

The user interface is available in several languages.

Starting from version 7.1.0 the handling for translations are moved to translate.wordpress.org.
Please help to translate into more languages or you can re-work on the current translations, if you think it’s needed.
If you have done your translation please leave a comment in the plugin’s support forum. I’ll take care of the review and approval.

Screenshots

  • The first screenshot shows the widget in the sidebar with five teasers of current posts. Each list item shows the title, image, date, assigned categories and excerpt of a post.
  • The second screenshot shows the widget on the Widget Management Page in the backend.

Installation

Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘Recent Posts Widget With Thumbnails’
  3. Click ‘Install Now’
  4. Activate the plugin on the Plugin dashboard
  5. Go to ‘Appearance’ => ‘Widgets’ and select ‘Recent Posts Widget With Thumbnails’

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select recent-posts-widget-with-thumbnails.zip from your computer
  4. Click ‘Install Now’
  5. Activate the plugin in the Plugin dashboard
  6. Go to ‘Appearance’ => ‘Widgets’ and select ‘Recent Posts Widget With Thumbnails’

Using FTP

  1. Download recent-posts-widget-with-thumbnails.zip
  2. Extract the recent-posts-widget-with-thumbnails directory to your computer
  3. Upload the recent-posts-widget-with-thumbnails directory to the /wp-content/plugins/ directory
  4. Activate the plugin in the Plugin dashboard
  5. Go to ‘Appearance’ => ‘Widgets’ and select ‘Recent Posts Widget With Thumbnails’

FAQ

What are the requirements for this plugin?

The WordPress version should be at least 2.9 to use featured images.

The theme should support wp_head() in the HTML header section to print the CSS code for a beautiful alignment of the thumbnails.

Can I set a default thumbnail?

Yes. Type in the web address of the thumbnail and click on “Save”. That’s all.

Can I set the width and height of the thumbnail?

Yes. You can enter the desired width and height of the thumbnails or select one of the sizes as set in ‘Settings’ > ‘Media’.

Can I change the alignment of the thumbnails in the list?

To keep the plugin lightweight: no. Please set the alignment in the CSS of your theme instead.

Where can I set the CSS of the list?

To keep the plugin lightweight: no. Please set the CSS in the Customizer at “Additional CSS”.

Can the plugin take the first image of a post as thumbnail image?

Yes. It works with images previously uploaded into the media library. You can select to prefer the first image to the featured image or to use the first image only.

How to keep HTML tags in the excerpts?

Use the “Excerpt” box below the editor on a post edit page in the backend. The plugin uses those user-defined excerpts unchanged “as is”.

If there is no text in the “Excerpt” box the plugin tries to build an excerpt via the post content. Since there is the “maximum length of the excerpt” option shortening the HTML content would lead to severe layout errors. So before shortening all HTML tags and shortcodes are removed.

Where is the *.pot file for translating the plugin in any language?

There is not pot file coming anymore with the plugin. With version 7.1 the translation was moved to translate.wordpress.org.
If you want to contribute a translation of the plugin in your language it would be great!

Reviews

July 7, 2023
The installation documentation says "Go to ‘Appearance’ => ‘Widgets’ and select ‘Recent Posts Widget With Thumbnails’" but it does not show. So I could not use.
April 18, 2023
Good. However, there is not enough setting for rounding the corners of the thumbnails. I had to add it with css.
September 10, 2022
This an amazing wp plugin to custom sidebar posts to the way your preferences of your website design. Recommended and it's free ! Big Applaud to the team behind this helpful plugin.
Read all 205 reviews

Contributors & Developers

“Recent Posts Widget With Thumbnails” is open source software. The following people have contributed to this plugin.

Contributors

“Recent Posts Widget With Thumbnails” has been translated into 15 locales. Thank you to the translators for their contributions.

Translate “Recent Posts Widget With Thumbnails” into your language.

Interested in development?

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

Change log

7.1.1

  • Restored PHP 5.x support

7.1.0

  • Added feature for post order and sorting (feature request: https://wordpress.org/support/topic/sort-posts-by-title/)
  • Added class .rpwwt-post-excerpt-more for the “more” text following the excerpt. (feature request: https://wordpress.org/support/topic/class-for-more-sign/)
  • Dropped PHP 5 support
  • Moved language files to translate.wordpress.org. So, please contribute as a translator to make Recent Posts Widget With Thumbnails available in more and more languages.
  • Compatibility with WordPress 5.8

7.0.3

  • new branding
  • Tested successfully with WordPress 5.6.2

7.0.2

  • Corrected comments in uninstall.php
  • Tested successfully with WordPress 5.6

7.0.1

  • Added catalan translation, thanks to Ibidem Group
  • Tested successfully with WordPress 5.5.3

7.0.0

  • Added option for omitting all alternative texts of images to improve accessibility
  • Added ARIA attribute for the list item of the current page to improve accessibility
  • Revised output if the post has no title
  • Revised thumbnail display functions
  • Improved description for the default alternative text
  • Updated *.pot file and translations
  • Updated screenshot of the widget form

6.9.0

  • Added option for the alt text of the default thumbnail
  • Updated *.pot file and translations
  • Updated screenshot of the widget form

6.8.0

  • Added option for the author name (please set a label if you have activated author names)
  • Added placeholders for the text fields
  • Updated *.pot file and translations
  • Tested successfully with WordPress 5.5.1
  • Updated screenshot of the widget form

6.7.1

  • Added NAV element around the post list if the theme supports the ‘navigation-widgets’ type (introduced in WP 5.5)
  • Added aria-label to the NAV element for better accessibility
  • Added loading=”lazy” attribute to the default image (introduced in WP 5.5)
  • Tested successfully with WordPress 5.5

6.7.0

  • Added new hook for developers ‘rpwwt_categories’ to modify the category list of each list item
  • Added spanish translation
  • Tested successfully with WordPress 5.3.2

6.6.1

  • Tested successfully with WordPress 5.3

6.6.0

  • Added option to display only the default thumbnail
  • Updated *.pot file and translations
  • Tested successfully with WordPress 5.2.4
  • Updated screenshot of widget in the backend

6.5.1

  • Tested successfully with WordPress 5.2.1

6.5.0

  • Added option to use only except fields as the source for excerpts
  • Updated *.pot file and translations
  • Tested successfully with WordPress 5.0.3
  • Updated screenshot of widget in the backend

6.4.1

  • Revised image size selection if a registered image size name is used
  • Changed variable names in get_first_content_image_id()
  • Changed initalization of variables site_protocol and site_url
  • Tested successfully with WordPress 5.0.2

6.4.0

  • Added option to omit CSS generation
  • Moved option for CSS class names to section “Additional settings”
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend

6.3.1

  • Fixed missing “more” links at excerpts from excerpt fields
  • Fixed missing line break in the widget form

6.3.0

  • Added option to show only sticky posts
  • Added option to print inline CSS instead of writing it in a file
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend
  • Tested successfully with WordPress 4.9.8

6.2.1

  • Fixed missing sticky posts in category filtered lists
  • Tested successfully with WordPress 4.9.7

6.2

  • Added option for category names as links or not
  • Added subheadlines in the widget for a more comprehensive appereance
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend
  • Tested successfully with WordPress 4.9.5

6.1

  • Added new filter hook ‘rpwwt_the_excerpt’ for manual excerpts
  • Removed sanitation of the widget title to allow HTML code as output
  • Tested successfully with WordPress 4.9.4

6.0

  • Added option for custom category label
  • Improved recognition of first images in post contents (now considers domain relative paths and protocol relative paths)
  • Fixed missing deactivation of thumbnails in version 5.3
  • Revised checks of variables
  • Further refactoring to simplify code management
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend

5.3

  • Added option to hide sticky posts
  • Changed excerpt filter from ‘the_content’ to ‘the_excerpt’
  • Thorough refactoring to simplify code management
  • Updated *.pot file and translations
  • Tested successfully with WordPress 4.9.2

5.2.2

  • Fixed missing feature opening links in excerpts in new windows
  • Revised FAQ

5.2.1

  • Added greek translation. Thank you, Kostas Arvanitidis!
  • Tested successfully with WordPress 4.9.1

5.2

  • Added option to set the ‘more’ text as link
  • Updated *.pot file and some translations

5.1.2

  • Added japanese translation. Thank you very much, Kazuyuki Kumai
  • Tested successfully with WordPress 4.8.2

5.1.1

  • Added turkish translation. Thank you very much, Mehmet HAKAN
  • Added ‘Requires PHP’ info in readme.txt
  • Tested successfully with WordPress 4.8.1

5.1

  • Revised sanitations for texts and URLs on the pages
  • Revised translations
  • Tested successfully with WordPress 4.8

5.0

  • Removed usage of cache
  • Removed usage of extract()
  • Improved: Faster check for found first image against being an image
  • Tested successfully with WordPress 4.7.2

4.13.3

  • Revised translation of author line

4.13.2

  • Revised widget template for more conformity to WP standard widget output

4.13.1

  • Tested successfully with WordPress 4.7

4.13

  • Added option to print the post category slugs as class names at LI elements
  • Fixed outdated URL to reviews
  • Updated *.pot file and german translation

4.12

  • Added option to ignore the post excerpt field as source of the excerpt
  • Updated *.pot file and german translation

4.11

  • Revised uninstall function for WordPress 4.6 due to the introduction of WP_Site_Query class
  • Narrowed down loading of plugin’s admin CSS file to Widgets page only
  • Tested successfully with WordPress 4.6

4.10.2

  • Fixed wrong length of excerpts

4.10.1

  • Added chmod after creation of public.css to ensure correct file permissions
  • Revised excerpt creation

4.10

  • Fixed old-to-new posts sort order in some installations to force new-to-old sort order
  • Fixed outdated translation
  • Added russian translation. Thank you very much, dmitriynn
  • Tested successfully with WordPress 4.5.2

4.9.2

  • Added polish translation. Thank you very much, Marcin Mikolajczyk
  • Improved: Manual excerpts are taken unchanged (“as is”)
  • I18n description in the backend’s plugin list
  • Tested successfully with WordPress 4.5
  • Updated *.pot file and translations

4.9.1

  • Improved integration of 3rd party plugins for effects on the thumbnail

4.9

  • Added option: Open post links in new windows
  • Renamed back: Hook ‘rpwwt-widget-title’ to ‘widget-title’ to let 3rd party plugins change the title
  • Improved sanitizing of stored variables
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend

4.8

  • Added option: Show post author
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend

4.7

  • Added option: Random order of posts
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend
  • Tested successfully with WordPress 4.4.2

4.6.2

  • Renamed the hook names to avoid interferences with other functions of plugins and the theme. If you use these hooks for that plugin please change them: just place ‘rpwwt_’ before the hook names
  • Improved: Last list item has no space anymore to the next widget to keep same spaces between widgets

4.6.1

  • Fixed: widget title. Now if no title is entered no title is displayed (instead of showing the plugin’s name)
  • Fixed: commas in categories list. Commas are now internationalized (translated)

4.6

  • Added option: Post categories
  • Updated *.pot file and translations
  • Updated screenshot of widget in the backend

4.5.1

  • Moved comment checkbox to position after form fields for the excerpt options
  • Tested successfully with WordPress 4.4

4.5

  • Added option: Post title length
  • Updated *.pot file and translations

4.4

  • Added option: Show number of comments
  • Updated *.pot file and translations

4.3.4

  • Fixed search stop at more link
  • Deleted visual intend of the linklist in some themes
  • Refactored thumbnail size variable

4.3.3

Improved data sanitization

4.3.2

  • Added widget description based on backend language
  • Corrected text domain name for translate.wordpress.org
  • Renamed translation files

4.3.1

  • Little adaptions for language files, ready for translate.wordpress.org
  • Updated *.pot file and translations

4.3

  • Added arabic translation. Thank you very much, Shadi AlZard
  • Tested successfully with WordPress 4.3.1

4.2.1

  • Fixed alignment of text and thumbnail in right-to-left (RTL) languages. Please re-save the widget to get the correct layout in RTL languages.

4.2

  • Added persian translation (Farsi). Thank you very much Sajjad Panahi
  • Tested successfully with WordPress 4.3

4.1

  • Changed single selection of a category to selection of multiple categories
  • Added DIV with id rpwwt-{widget_id} and class rpwwt-widget around list for available container with ensured attribute for CSS selectors
  • Updated admin CSS
  • Updated *.pot file and german translation
  • Updated screenshot of widget in the backend
  • Revised readme.txt

4.0

  • Added category option: widget only lists posts of a selected category, else lists posts of all categories
  • Added sticky posts option: widget shows sticky posts on top of the list, else lists them in normal order
  • Added hide current post option: widget does not list the post where the user is currently on, else lists it
  • Added CSS class names for easy designing of the list and its list items; see Description for details
  • Added style sheet for Widget page in the backend
  • Fixed missing custom image sizes in frontend
  • Formatted the code more readable
  • Updated *.pot file and german translation
  • Updated screenshots
  • Revised readme.txt

3.0

  • Added default image sizes dropdown menu
  • Added options to print out excerpts
  • Refactored: HTML output moved into include files
  • Slight improvements for security and performance
  • Updated *.pot file and german translation
  • Revised readme.txt

2.3.3

  • Fixed error message on trial to open the CSS file
  • Tested successfully with WordPress 4.2.2

2.3.2

  • Fixed bug of wrong path to public.css file
  • Changed HTML class names, now they start with ‘rpwwt-‘

2.3.1

  • Set CSS for the list style to prevent dots in some themes
  • Added span element with class “post-title” around the title
  • Tested successfully with WordPress 4.2

2.3

  • Added option to keep aspect ratios of the original images
  • Added option to hide the post title in the list
  • Moved inline CSS to external file
  • Revised *.pot file and german translation

2.2.2

  • Successfully tested with WordPress 4.1
  • Fixed bug which threw a warning in debug mode when accessing options

2.2.1

  • Fixed bug which prevented to find the first content image
  • Slightly revised algorithm for detecting the first image in post content

2.2

Revised algorithm to detect the first image in post content.

2.1.1

Successfully tested with WordPress 4.0

2.1

  • Improve uninstall routine
  • Tested successfully with WordPress 3.9.2

2.0

  • Added option to set width and height of the thumbnails
  • Added option to prefer first content image to featured image
  • Added option to use only first content image as thumbnail
  • Added option to set a default thumbnail
  • Added function to delete plugin’s settings in the database if the plugin is deleted
  • Improved code for more robustness
  • Updated *.pot file and german translation

1.0

  • The plugin was released.