{"id":338344,"date":"2026-07-19T08:57:17","date_gmt":"2026-07-19T08:57:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/fraew-category-posts-list\/"},"modified":"2026-07-21T21:39:51","modified_gmt":"2026-07-21T21:39:51","slug":"fraew-category-posts-list","status":"publish","type":"plugin","link":"https:\/\/et.wordpress.org\/plugins\/fraew-category-posts-list\/","author":23526852,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.4.1","stable_tag":"1.4.1","tested":"7.0.2","requires":"5.3","requires_php":"7.2","requires_plugins":null,"header_name":"fraew Category Posts List","header_author":"Christopher Andrews","header_description":"Display posts from the current post's category in a widget or shortcode.","assets_banners_color":"f7efe8","last_updated":"2026-07-21 21:39:51","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/buymeacoffee.com\/fraew","header_plugin_uri":"https:\/\/thebigcity.co.nz\/fraew-category-posts-list\/","header_author_uri":"https:\/\/thebigcity.co.nz","rating":0,"author_block_rating":0,"active_installs":0,"downloads":101,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.2.0":{"tag":"1.2.0","author":"fraew","date":"2026-07-19 08:56:59"},"1.3.0":{"tag":"1.3.0","author":"fraew","date":"2026-07-20 08:31:23"},"1.4.0":{"tag":"1.4.0","author":"fraew","date":"2026-07-21 09:27:37"},"1.4.1":{"tag":"1.4.1","author":"fraew","date":"2026-07-21 21:39:51"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3613371,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3613371,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3616774,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3614403,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3614403,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.0","1.3.0","1.4.0","1.4.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3616226,"resolution":"1","location":"assets","locale":"","width":2200,"height":1304},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3616226,"resolution":"2","location":"assets","locale":"","width":2200,"height":1422},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3616226,"resolution":"3","location":"assets","locale":"","width":1040,"height":1356},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3616226,"resolution":"4","location":"assets","locale":"","width":1800,"height":972}},"screenshots":{"1":"The widget in a sidebar: posts from the current post's category, with a sticky post pinned to the top and author, date and reading time shown inline","2":"The same list with metadata in block format, shown on its own line beneath each title","3":"Widget settings, including the metadata fields and sticky post options","4":"Global settings that apply to every instance of the widget"}},"plugin_section":[],"plugin_tags":[89,166,1089,168,162],"plugin_category":[43,59],"plugin_contributors":[270694],"plugin_business_model":[],"class_list":["post-338344","plugin","type-plugin","status-publish","hentry","plugin_tags-category","plugin_tags-posts","plugin_tags-related-posts","plugin_tags-sidebar","plugin_tags-widget","plugin_category-customization","plugin_category-utilities-and-tools","plugin_contributors-fraew","plugin_committers-fraew"],"banners":{"banner":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/banner-772x250.png?rev=3614403","banner_2x":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/banner-1544x500.png?rev=3614403","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/icon.svg?rev=3616774","icon":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/icon.svg?rev=3616774","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/screenshot-1.png?rev=3616226","caption":"The widget in a sidebar: posts from the current post's category, with a sticky post pinned to the top and author, date and reading time shown inline"},{"src":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/screenshot-2.png?rev=3616226","caption":"The same list with metadata in block format, shown on its own line beneath each title"},{"src":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/screenshot-3.png?rev=3616226","caption":"Widget settings, including the metadata fields and sticky post options"},{"src":"https:\/\/ps.w.org\/fraew-category-posts-list\/assets\/screenshot-4.png?rev=3616226","caption":"Global settings that apply to every instance of the widget"}],"raw_content":"<!--section=description-->\n<p>fraew Category Posts List is a lightweight, flexible widget that displays posts from the same category as the currently viewed post. Perfect for blogs, news sites, and any WordPress site that wants to help visitors discover related content.<\/p>\n\n<p><strong>Features:<\/strong><\/p>\n\n<ul>\n<li>Display posts from the current post's category in a widget<\/li>\n<li>Three display formats: List, Comma-separated, or Inline<\/li>\n<li>Customize spacing between posts (Compact, Normal, Comfortable, Spacious)<\/li>\n<li>Toggle post separators (borders) on or off<\/li>\n<li>Current post is highlighted in bold<\/li>\n<li><strong>Optional post metadata<\/strong> \u2013 Show publication date, author, comment count, and reading time estimates<\/li>\n<li><strong>Sticky post promotion<\/strong> \u2013 Move sticky posts to the top with optional visual indicators<\/li>\n<li><strong>Post Category Navigation widget<\/strong> \u2013 Display previous\/next posts in the same category with customizable layouts<\/li>\n<li>Configure global settings that apply to all widget instances<\/li>\n<li>Works with any theme<\/li>\n<li>Lightweight and performant<\/li>\n<li>Zero bloat \u2013 only loads CSS on pages where the widget appears<\/li>\n<\/ul>\n\n<p><strong>Display Formats:<\/strong><\/p>\n\n<ul>\n<li><strong>List<\/strong> \u2013 Traditional vertical list, one post per line<\/li>\n<li><strong>Comma-Separated<\/strong> \u2013 Posts displayed inline: Post 1, Post 2, Post 3<\/li>\n<li><strong>Inline<\/strong> \u2013 Posts displayed inline with spaces: Post 1 Post 2 Post 3<\/li>\n<\/ul>\n\n<p><strong>Spacing Options:<\/strong><\/p>\n\n<ul>\n<li><strong>Compact<\/strong> \u2013 3px padding (tight list)<\/li>\n<li><strong>Normal<\/strong> \u2013 8px padding (default)<\/li>\n<li><strong>Comfortable<\/strong> \u2013 12px padding<\/li>\n<li><strong>Spacious<\/strong> \u2013 15px padding (generous spacing)<\/li>\n<\/ul>\n\n<p><strong>Post Separators:<\/strong><\/p>\n\n<p>Toggle borders between posts on or off to match your site's design.<\/p>\n\n<h3>Usage<\/h3>\n\n<h3>Widget Setup<\/h3>\n\n<ol>\n<li>Go to <strong>Appearance \u2192 Widgets<\/strong><\/li>\n<li>Find and add <strong>\"Category Posts List\"<\/strong> widget to a widget area (sidebar, footer, etc.)<\/li>\n<li>Settings:\n\n<ul>\n<li><strong>Posts Per Page<\/strong> \u2013 How many posts to display (default: 100)<\/li>\n<li><strong>Sort Posts<\/strong> \u2013 Choose sort order:\n\n<ul>\n<li>Title (A-Z)<\/li>\n<li>Title (Z-A)<\/li>\n<li>Date (Newest First)<\/li>\n<li>Date (Oldest First)<\/li>\n<\/ul><\/li>\n<\/ul><\/li>\n<\/ol>\n\n<p>Note: The widget will automatically display the category name as its heading.<\/p>\n\n<h3>Global Settings<\/h3>\n\n<p>Go to <strong>Settings \u2192 Category Posts List<\/strong> to configure:<\/p>\n\n<ul>\n<li><strong>Post Separators<\/strong> \u2013 Show or hide borders between posts<\/li>\n<li><strong>Display Format<\/strong> \u2013 Choose how posts are presented (List, Comma-separated, or Inline)<\/li>\n<li><strong>Spacing Between Posts<\/strong> \u2013 Adjust vertical spacing in list format<\/li>\n<\/ul>\n\n<p>These settings apply to all widget instances on your site.<\/p>\n\n<h3>How It Works<\/h3>\n\n<p>When a visitor views a post, this plugin:<\/p>\n\n<ol>\n<li>Detects the post's category<\/li>\n<li>Retrieves all posts in that category<\/li>\n<li>Displays them according to your configured settings<\/li>\n<li>Highlights the currently viewed post in bold<\/li>\n<\/ol>\n\n<p>The widget only appears on single post pages and does not display on category archives, search results, or homepage.<\/p>\n\n<h3>Configuration Examples<\/h3>\n\n<p><strong>Example 1: Clean, Minimal List<\/strong>\n- Display Format: List\n- Separators: OFF\n- Spacing: Compact<\/p>\n\n<p><strong>Example 2: Prominent Related Posts<\/strong>\n- Display Format: List\n- Separators: ON\n- Spacing: Spacious<\/p>\n\n<p><strong>Example 3: Compact Inline<\/strong>\n- Display Format: Comma-separated\n- Spacing: Compact (irrelevant for inline format)<\/p>\n\n<p><strong>Example 4: Bold Discovery<\/strong>\n- Display Format: Inline\n- Spacing: Normal (irrelevant for inline format)<\/p>\n\n<h3>Support<\/h3>\n\n<p>Need help? Visit the plugin documentation or report issues:<\/p>\n\n<ul>\n<li>WordPress.org Plugin Page: https:\/\/wordpress.org\/plugins\/fraew-category-posts-list\/<\/li>\n<li>Support Forum: https:\/\/wordpress.org\/support\/plugin\/fraew-category-posts-list\/<\/li>\n<\/ul>\n\n<h3>Donate<\/h3>\n\n<p>Love this plugin? Support future development:\nhttps:\/\/buymeacoffee.com\/fraew<\/p>\n\n<h3>License<\/h3>\n\n<p>This plugin is licensed under the GPLv2 or later. For more information, visit:\nhttps:\/\/www.gnu.org\/licenses\/gpl-2.0.html<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>fraew-category-posts-list<\/code> folder to <code>\/wp-content\/plugins\/<\/code> via FTP or through the WordPress admin<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress<\/li>\n<li>Configure settings: <strong>Settings \u2192 Category Posts List<\/strong><\/li>\n<li>Add the widget: <strong>Appearance \u2192 Widgets \u2192 Category Posts List<\/strong><\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"q%3A%20why%20doesn%27t%20the%20widget%20show%20on%20my%20page%3F\"><h3>Q: Why doesn't the widget show on my page?<\/h3><\/dt>\n<dd><p>A: The widget only displays on single post pages, not on category archives, search results, or the homepage.<\/p><\/dd>\n<dt id=\"q%3A%20can%20i%20customize%20the%20styling%20beyond%20what%20the%20settings%20provide%3F\"><h3>Q: Can I customize the styling beyond what the settings provide?<\/h3><\/dt>\n<dd><p>A: Yes! The plugin uses CSS classes you can override in your theme's <code>style.css<\/code>. Classes include:\n- <code>.fcpl-posts-list<\/code> \u2013 Main container\n- <code>.fcpl-category-title<\/code> \u2013 Category heading\n- <code>.fcpl-post<\/code> \u2013 Individual post item\n- <code>.fcpl-post-current<\/code> \u2013 Current post (highlighted)\n- <code>.fcpl-posts-inline<\/code> \u2013 Inline format container<\/p><\/dd>\n<dt id=\"q%3A%20does%20it%20match%20the%20fraew%20-%20modern%20light%20theme%20automatically%3F\"><h3>Q: Does it match the fraew - modern light theme automatically?<\/h3><\/dt>\n<dd><p>A: Yes. When a theme declares support for \"fraew-design-tokens\" (as fraew - modern light does),\nthe plugin loads a skin that styles the list with that theme's own palette and fonts. Under any\nother theme it uses its neutral default styling.<\/p><\/dd>\n<dt id=\"q%3A%20can%20i%20use%20multiple%20instances%20of%20the%20widget%3F\"><h3>Q: Can I use multiple instances of the widget?<\/h3><\/dt>\n<dd><p>A: Yes, you can add the widget to multiple sidebars or widget areas. All instances share the same global settings.<\/p><\/dd>\n<dt id=\"q%3A%20does%20this%20plugin%20work%20with%20custom%20post%20types%3F\"><h3>Q: Does this plugin work with custom post types?<\/h3><\/dt>\n<dd><p>A: Currently, this plugin only works with standard WordPress posts and post categories. Custom post types are not supported.<\/p><\/dd>\n<dt id=\"q%3A%20how%20many%20posts%20can%20i%20display%3F\"><h3>Q: How many posts can I display?<\/h3><\/dt>\n<dd><p>A: Up to 100 posts per widget (configurable in widget settings).<\/p><\/dd>\n<dt id=\"q%3A%20will%20this%20slow%20down%20my%20site%3F\"><h3>Q: Will this slow down my site?<\/h3><\/dt>\n<dd><p>A: No. The plugin is lightweight and only queries posts in the current category, not all posts. CSS is only loaded on pages where the widget appears.<\/p><\/dd>\n<dt id=\"q%3A%20can%20i%20change%20the%20sort%20order%20per%20widget%3F\"><h3>Q: Can I change the sort order per widget?<\/h3><\/dt>\n<dd><p>A: Yes. Each widget instance has its own \"Sort Posts\" setting, so you can display different sort orders on different pages if needed.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Changed: the plugin now requires WordPress 5.3 or later. It has always used wp_date(), which was added in 5.3, so the previous \"Requires at least: 5.0\" was inaccurate and the date option could fail on WordPress 5.0-5.2. The requirement now matches the code.<\/li>\n<li>Fixed: the 1.4.0 changelog below described navigation widget options (display modes, thumbnails, excerpts, reverse order) that were dropped before release and never shipped. Corrected to describe the widget as it actually is.<\/li>\n<li>Internal: added translator comments to the comment-count and reading-time strings.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Added: New \"fraew Category Posts Navigation\" widget showing the previous, current and next post in the current post's category, on a single line.<\/li>\n<li>Added: Sort order setting for the navigation widget \u2013 Title (A-Z), Title (Z-A), Date (newest first) or Date (oldest first). Title sorting ignores a leading \"The\", \"A\" or \"An\", matching the list widget.<\/li>\n<li>Added: Options to hide the navigation on non-post pages and to add border\/background styling.<\/li>\n<li>Improved: CSS classes for styling customization (.fcpl-nav-widget, .fcpl-nav-prev, .fcpl-nav-current, .fcpl-nav-next), styled for both the default and fraew-design-tokens themes.<\/li>\n<li>Maintained: Full backward compatibility \u2013 the new widget is optional and does not affect existing installations.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Added: Optional post metadata display (publication date, author, comment count, reading time estimate)<\/li>\n<li>Added: Sticky post promotion \u2013 move sticky posts to the top of the list<\/li>\n<li>Added: Optional sticky post visual indicators (emoji badge or custom)<\/li>\n<li>Added: Support for inline and block metadata display formats<\/li>\n<li>Added: Widget settings for metadata and sticky post configuration<\/li>\n<li>Improved: All metadata elements are clickable and properly escaped for security<\/li>\n<li>Improved: CSS classes for custom styling: .fcpl-meta, .fcpl-sticky-indicator, .fcpl-item--sticky<\/li>\n<li>Maintained: Full backward compatibility \u2013 all new features are optional and disabled by default<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Added: automatic styling for themes that declare support for \"fraew-design-tokens\" (such as\nthe fraew - modern light theme). The widget adopts the theme's palette and fonts via a skin\nstylesheet, and falls back to the neutral default under any other theme. No theme code required.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Fixed: the rendered markup used misspelled CSS class names (fffcpl-posts-list,\nffcpl-posts, ffcpl-post-current) that did not match the stylesheet. As a result the\n\"Show separators\" and \"Item spacing\" settings had no effect. Both now work.<\/li>\n<li>Fixed: posts are alphabetised ignoring a leading \"The\", \"A\" or \"An\", so \"The Chills\"\nfiles under C. \"Theatre Royal\" is unaffected.<\/li>\n<li>Fixed: for a post in both a parent and a child category, the list now uses the most\nspecific (deepest) category rather than whichever term ID came back first.<\/li>\n<li>Added: aria-current=\"page\" on the link to the post being viewed.<\/li>\n<li>Added: fcpl_enqueue_frontend_css filter - return false to suppress the plugin's\nstylesheet when your theme styles the widget itself.<\/li>\n<li>Added: fcpl_category_title filter to relabel or hide the heading.<\/li>\n<li>Added: fcpl_primary_category_id and fcpl_sort_key filters.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>List, Comma-separated, and Inline display formats<\/li>\n<li>Configurable spacing (Compact, Normal, Comfortable, Spacious)<\/li>\n<li>Toggle post separators on\/off<\/li>\n<li>Global settings page<\/li>\n<li>Widget with sort order options<\/li>\n<li>Current post highlighting<\/li>\n<\/ul>","raw_excerpt":"Display all posts from the current post&#039;s category in a widget with customizable formatting, display options, and spacing.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/338344","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=338344"}],"author":[{"embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/fraew"}],"wp:attachment":[{"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=338344"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=338344"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=338344"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=338344"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=338344"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/et.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=338344"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}