Releases: WebberZone/contextual-related-posts
Releases · WebberZone/contextual-related-posts
Release list
v4.3.0
Changelog
Release Date - 18 July 2026
Release post: https://webberzone.com/announcements/contextual-related-posts-v4-3-0/
-
New features:
- New "Clear cache when a post is trashed or restored" toggle (off by default) under the Performance tab. When enabled, the entire CRP cache is cleared on the
wp_trash_postanduntrashed_posttransitions, so stale related-posts lists no longer continue to show trashed posts with broken links or missing thumbnails until the cache TTL expires. - [Pro] New "Keyword" setting on the Related Posts block and the CRP Query Loop block: enter a word or phrase to find related posts using that keyword instead of the title and content of the current post, matching the existing metabox behaviour. The advanced algorithm honours the keyword on both the custom tables and native tables paths.
- [Pro] Lazy load related posts: a new setting under the Performance tab loads the related posts via JavaScript only when they are about to enter the viewport. This speeds up the initial page load and plays better with page caching plugins. Note: search engines may not index the related posts links when this is enabled, since they are no longer part of the initial HTML. Applies to all display methods — content, shortcode, widget and the Related Posts block — with the configured options preserved via a signed payload. The Query Loop block variation is rendered by WordPress core and is not lazy loaded. Use
lazy_load="0"in the shortcode (or thecrp_lazy_loadfilter) to disable it per instance. Skipped on feeds and AMP pages. - [Pro] Cart Related Products: displays a grid of contextually related products on the WooCommerce cart page when the cart subtotal is below the free shipping threshold. Products are filtered to a configurable price band anchored to the gap-to-free-shipping, and ranked by CRP relevance using the most expensive cart item as the source. Configurable options include product count, price upper-bound percentage, custom heading, and cart page hook position. Coupon discounts are correctly accounted for when calculating the gap.
- [Pro] New option to control which post types should show the metabox when editing the post.
- New "Clear cache when a post is trashed or restored" toggle (off by default) under the Performance tab. When enabled, the entire CRP cache is cleared on the
-
Modifications:
- Related posts with equal relevance scores are now returned in a stable order: post date and post ID are used as tiebreakers after the relevance score.
- New
crp_pre_related_postsfilter to short-circuit the related posts output for all display methods. The lazy load feature uses this; developers can return a non-null value to replace the output entirely. - [Pro] New REST API endpoint
contextual-related-posts/v1/posts/<id>/htmlthat returns the rendered related posts HTML. Display arguments are only honoured when accompanied by a valid signature generated during a server-side render.
Full Changelog: v4.2.4...v4.3.0
v4.2.4
Changelog
Release Date - 6 June 2026
-
Modifications:
- [Pro] Renamed the "Reindex Custom Tables" tool to "Custom Tables" and added a "Recreate Custom Tables" button that drops and recreates the table structure, with success/error feedback displayed in the admin.
- [Pro] Added "Convert Custom Table to InnoDB" tool that upgrades the table storage engine and automatically regenerates FULLTEXT indexes.
- [Pro] Custom table creation is now skipped entirely when the Enhanced Content Search Index setting is disabled, avoiding unnecessary database queries on every admin page load.
- [Pro] Custom table creation is now blocked on MySQL versions below 5.7.8 and MariaDB versions below 10.2.7 (which lack JSON column support), with a clear admin notice instead of a silent failure.
- [Pro] Admin notices: FULLTEXT index and missing-table warnings now respect the ECSI setting; removed ECSI upsell and wizard notices; DB errors use the Admin_Notices_API.
-
Bug fixes:
- Fixed broken
aspect-ratioon the rounded thumbs style caused by CSS variables carryingpxunits. A unitless--crp-aspect-ratiovariable is now used, consistent with the grid and thumbs-grid styles.
- Fixed broken
Full Changelog: v4.2.3...v4.2.4
v4.2.3
Changelog
- New features:
- (Pro) Added ACF field support for thumbnails: specify an Advanced Custom Fields Image or Text field name in the thumbnail settings. Supports all ACF Image field return formats (Image Array, Image ID, Image URL) as well as plain Text fields containing a URL.
- Modifications:
- [Pro] Scheduled reconciliation cron: a twicedaily background job now automatically syncs any published posts that are missing from the custom search index table — keeps the index complete without manual intervention.
- [Pro] Custom table upsert optimized to use
INSERT ... ON DUPLICATE KEY UPDATE, reducing write contention on high-traffic sites. - [Pro] Database check results are now cached within a request, reducing redundant
SHOW TABLESqueries on pages that check table status multiple times. - [Pro] Tools page migration and undo scripts are now loaded as external JavaScript files (via
wp_enqueue_script) instead of inline<script>blocks — improves compatibility with strict Content Security Policies. - [Pro] Copy-to-clipboard buttons on the tools and custom tables pages are now initialized automatically; no per-block inline script needed.
- [Pro] The Include Categories Tom Select field in the post metabox is now correctly initialized.
- [Pro] Network admin: settings copy URL cleanup and select-all checkbox logic moved to an external JavaScript file.
- Tom Select fields in the settings now include a clear button for easier value removal.
- Fixed spinner alignment inside action buttons (now displays inline rather than floating).
- The custom CSS will now always be available in the frontend when the field contains CSS.
- Manual Related Posts lookup improved.
- Fixes:
- Security hardening: improved output escaping in settings forms and metabox fields.
- Fixed Tom Select value extraction for multiselect fields which gave a JS error.
Full Changelog: v4.2.2...v4.2.3
4.2.3-beta2
4.2.3-beta1
chore: sync free from pro and refresh i18n
Version 4.2.2
Changelog
- Bug fixes:
- Hardened REST API permission checks and argument sanitization.
- Escaped
post_class()output more safely. - Added validation before
switch_to_blog()calls in the table manager. - Added ABSPATH protection to the sidebar template.
- Fixed the random order widget setting using the correct boolean field.
- Typecast numeric limit values to ensure they are properly captured as integers.
Full Changelog: 4.2.1...4.2.2
4.2.2-beta1
Version 4.2.1
Changelog
- Bug fixes:
- Bulk edit not saving manual related posts when input is '0' or empty.
- Translation function usage in bulk edit manual related posts label.
- Unauthorized edit-context access in REST API - now properly checks post edit capabilities.
What's Changed
- Improve Hook Registry callback hashing by @ajaydsouza in #222
- Develop by @ajaydsouza in #224
Full Changelog: 4.2.0...4.2.1
4.2.1-beta1
Version 4.2.0
Release post: https://webberzone.com/announcements/contextual-related-posts-v4-2-0/
-
Features:
- [Pro] Multisite tool to copy Contextual Related Posts settings between sites from the Network Settings page.
- [Pro] WooCommerce integration with ECSI-powered product indexing and related posts output on product pages. WooCommerce-related products output customisation options (thumbnail, sale badge, price, rating, and add to cart) and product filtering options.
- [Pro] Server Load Threshold setting to skip CRP queries when MySQL is backlogged. Learn more.
- [Pro] Bot Protection setting to short-circuit CRP for known crawlers and bots, preserving resources and analytics integrity.
- [Pro] Comprehensive WP-CLI command suite for advanced management, including database operations, cache management, custom table indexing, and content processing. Commands include
wp crp db,wp crp cache,wp crp tables indexes, and more, with full multisite support. - [Pro] If Pro is active, the plugin renames "Exclude Categories" and "Exclude on Categories" to "Exclude Terms" and "Exclude on Terms" with support for all public custom taxonomies.
- Media Handler now supports the FIFU WordPress plugin for featured image detection.
-
Modifications:
- [Pro] Added a "Save & Clear Cache" button on the settings page to purge cached results immediately after saving changes.
- Cache key generation differentiates between the HTML cache and the Posts cache. Cache key generation has been significantly optimized to limit the number of keys.
- Improved Media Handler to reduce recursion, generate more reliable resized thumbnails, and better detect image alt text and attributes.
- Settings framework refactored from static to instance methods with Tom Select-powered AJAX taxonomy search for a smoother admin experience.
- Refreshed built-in related posts styles (grid, masonry, rounded thumbs and thumbs grid) with CSS custom properties for improved responsiveness and easier theming.
- Migrated post meta storage from single
crp_post_metaarray to individual_crp_*keys for better performance and compatibility. Includes a backward compatibility layer and an admin migration tool. - Updated custom table sync to generate a post excerpt if the post doesn't contain one. It will also include the keyword set in the meta field.
- CRP_Core_Query class now accepts
post_idas the primary parameter, supporting both integer and WP_Post object types. The legacypostidparameter is deprecated and will trigger a warning; it will be removed in a future release. - Change CRP_CACHE_TIME to a week, down from a month.
- Updated bundled Freemius SDK to version 2.13.0.
-
Bug fixes:
- Fixed a missing
echoin the Media Handler that could prevent some image markup from being printed in specific cases. - Improved translation string handling in the settings UI and adjusted Plugin Check rules to avoid false positives.
- Fixed display issue with special characters (like ™ and ®) in post titles.
- CRP_Core_Query was incorrectly called more than once within the same request.
- Fixed a missing
Full Changelog: 4.1.0...4.2.0