Change Logs
Check our changelogs below to see how frequently our plugins are updated! We practice customer-driven development, so if there’s something you want to see in our plugins come tell us about it on our Discord server!
All updates
Every release of every plugin, newest first. Pick a plugin above for its full changelog.
90 releases without an exact date are not listed here; each plugin’s own changelog still has them.
Super Speedy Coming Soon 1.5.4
- Fixed signup form was being output at the bottom of every page (including non-coming-soon pages) via an unconditional wp_footer hook — form now only renders on products marked as Coming Soon
- Fixed plugin JS and CSS were being enqueued on every page — now only loaded on coming-soon product pages
- Fixed wp_localize_script was outputting an inline
sscs_ajaxdata block on every page, which could interfere with other AJAX/JSON responses - Removed leftover console.log debug statements in the AJAX signup script
- Internal: initialised $subscriber_id explicitly in the MailerLite API helper to silence potential undefined-variable notices
Super Speedy Imports 2.57.0
- New the unique item identifier can now combine multiple fields – any mix of post fields (Title, Slug, GUID), postmeta keys (e.g. SKU), and taxonomies (e.g.
product_cat,pa_color). Items match when all chosen fields are equal. This solves the common "same SKU, different colour/size" case where a single SKU isn't unique. Matching runs against the data your catalogue already holds, so re-imports update existing items instead of duplicating them, even for products SSI didn't create. - New if a composite identifier can't tell two rows (or two existing items) apart, the import now aborts with a clear report listing the affected rows, instead of silently updating the wrong item.
- New when the identifier includes a taxonomy, import modes that skip taxonomy resolution ("Update prices/postmeta only", "Refresh images only") are disabled, since taxonomy matching needs the term-resolution stage to run.
- Changed the old PHP-function and raw-CSV-column identifiers have been removed – a value computed from the CSV row can't be matched against existing items, which was the root cause of duplicate-on-update. Choose post / postmeta / taxonomy fields instead.
- Note composite identifiers aren't yet supported for variable / synthesised-parent products – use a single SKU there.
Super Speedy Imports 2.56
- A mapped
post_name(product slug) is now imported verbatim instead of being overwritten with a de-duplicated slug derived from the title. - Fixed choosing a field as the unique item identifier now matches your existing items on that field's native postmeta key (e.g. SKU on
_sku) instead of SSI's private key. Previously, using your SKU field as the identifier failed to find products created outside SSI (manually, or by another importer), so a re-import duplicated every existing product instead of updating it. Existing imports are migrated automatically; no reconfiguration needed.
Super Speedy Filters 6.34.1
- Changed use of <p style="display:none"> to HTML comments instead for VERBOSE DEBUG mode.
Super Speedy Filters 6.34
- Fixed bug where category pages were being treated as shop pages – affected SEO and category filtering unless the category filtering add-on was enabled
Super Speedy Search 5.55
- Added meta key axis option to taxonomy suggestions so you can mix and match meta values and term names in the suggestions builder
- Updated the Super Speedy Settings page: added a "Recheck Licenses" button above the licence table so customers have a clear way to refresh licence status after a renewal or upgrade without scrolling down to the licence-key field. The button is disabled until a licence key is entered/saved and re-enables as you type.
- The Recheck flow now also force-bypasses the auth-server's own 1-hour licence cache (via a
force=1flag on thewpiapi/check_product_keycall), so renewals/upgrades that completed less than an hour before a recheck no longer show as expired/exceeded. Normal admin page loads continue to use both caches as before — only an explicit Recheck click bypasses them. (Lives in thesuper-speedy-settingssubmodule, so the change propagates to every Super Speedy plugin.)
Super Speedy Chat 1.10
- Fixed a bug where settings fields could be saved as 0 instead of their correct defaults on a fresh install.
Super Speedy Search 5.54
- Fixed error with mysqli error (
mysqli_get_server_info(): Argument #1 ($mysql) must be of type mysqli, null given) that could appear in the PHP error log during the WordPressshutdownhook, typically attributed to WooCommerce Action Scheduler. The suggestions/autocomplete handlersss_get_json_Suggestions()was calling$wpdb->close(), which closed the shared global database connection mid-request. WordPress does not reconnect within the same request, so the next code to use the database on shutdown — usually WooCommerce's BatchProcessingController calling Action Scheduler — crashed on the now-null connection handle. The redundant$wpdb->close()call has been removed; PHP closes the connection automatically at the end of the request anyway.
Super Speedy Chat 1.09
- The "Require login to chat" setting is now actually enforced. Previously the checkbox existed but had no effect; now, when enabled, all visitor endpoints (session/send/poll/email/auto-reply) return 401 for anonymous visitors, and the chat widget replaces the message input with a log in / create account invitation. Conversations from logged-in users are linked to their account as before.
- With Require Login enabled, chat requests route through the standard REST API instead of the Ultra Ajax fast path (mu-plugin updated to 1.2.0), since they need real WordPress authentication. Anonymous-friendly sites are unaffected.
- Added `SSC_Settings :flush_cache()` for re-reading options mid-request.
- The widget footer link no longer claims the plugin is free ("Powered by Super Speedy Chat").
- New regression test tests/test-require-login.php.
Super Speedy Imports 2.55.9
- New products now get assigned every level of a category path, not just the deepest one. When a product is in
Men > T-Shirts, bothMenandT-Shirtsare attached (matching WP All Import), so parent category pages list the product, breadcrumbs show the full path, and layered-navigation filters include parent categories. A new "Assign every category level" option in Additional Options controls it. New imports default it ON; imports created before this release keep their previous leaf-only behaviour until you switch it on.
Super Speedy Ajax Prices 1.3
- Added WooCommerce Product Bundles and Composite Products support. When either of those plugins is active, the AJAX stock-refresh response now carries per-child / per-component availability for those product types — bundles include a
bundled_itemsmap (per child: in-stock, purchasable, optional, max stock) plus the bundle's overall stock roll-up, and composites include acomponentsmap (per component: title, optional flag, default option, and per-option in-stock/purchasable state). This lets fully-cached archive and product pages show accurate per-part availability. Each adapter self-registers only when its parent plugin is present (and is a harmless no-op otherwise), and the data is included only when the "Refresh stock via AJAX" option is enabled. Verified by new end-to-end tests for both product types. - Security hardening the AJAX price/stock endpoint now only ever returns data for Published products. Draft, pending, private, and scheduled products are no longer turned into AJAX placeholders and are skipped by the handler, so unpublished prices and stock levels can no longer be enumerated by unauthenticated visitors. Admins previewing an unpublished product still see the correct price — it simply isn't refreshed via AJAX until the product is published.
- Capped the number of products processed per AJAX request (default 200) to prevent a single request from forcing thousands of product loads. The cap is adjustable via the new
ssap_max_products_per_requestfilter — see the Developer Reference KB article. - Hardened request handling so a malformed (non-array) product list can no longer trigger a PHP error; incoming IDs are now de-duplicated and zero-filtered before processing.
- Added .kb troubleshooting and developer-reference guides.
Super Speedy Imports 2.55.8
- Fixed a duplicate-key crash during taxonomy import on large catalogues (50,000+ terms per taxonomy), where parallel workers racing to create the same shared term could abort the whole import. Term creation is now serialised and recovers safely if a term already exists. Relationship assignment stays fully parallel, and there is no meaningful speed cost (parallelism was buying almost nothing at this step).
Super Speedy Imports 2.55.7
- Changed if your CSV lists the featured image in the gallery column too, it now stays in the gallery instead of being silently removed (WooCommerce allows the featured image and gallery to overlap, so that is your choice). This also removes a query that could hang the gallery stage for 20-30 minutes on catalogues where many products share the same image URLs.
Super Speedy Imports 2.55.6
- Performance gallery image data is now written to the database in batches instead of one write per image, cutting a large chunk of time off the gallery stage on big catalogues (and removing a source of run-to-run variance). No change to what gets written.
- The image-upload stage now records download, image-processing, and thumbnail timings in the import history, so you can see whether a slow image import is network-bound or CPU-bound.
Super Speedy Ajax Prices 1.2
- Updated the Super Speedy Settings page: added a "Recheck Licenses" button above the licence table so customers have a clear way to refresh licence status after a renewal or upgrade without scrolling down to the licence-key field. The button is disabled until a licence key is entered/saved and re-enables as you type.
- The Recheck flow now also force-bypasses the auth-server's own 1-hour licence cache (via a
force=1flag on thewpiapi/check_product_keycall), so renewals/upgrades that completed less than an hour before a recheck no longer show as expired/exceeded. Normal admin page loads continue to use both caches as before — only an explicit Recheck click bypasses them. (Lives in thesuper-speedy-settingssubmodule, so the change propagates to every Super Speedy plugin.) - Added a bunch of playright tests to check for regressions in future deployments
Super Speedy Chat 1.08
- Introduced the add-on extension API (
SSC_ADDON_API_VERSION = 1.0) — channel integrations can now ship as separate plugins (WhatsApp, Slack, Telegram, etc.) and plug into core via hooks instead of patching it - Added
SSC_Addonsregistry class — add-ons callSSC_Addons::register()to declare slug, version, channel, and minimum API version requirements - Added PHP message-lifecycle hooks
ssc_visitor_message_sent,ssc_admin_reply_sent,ssc_bot_message_sent,ssc_conversation_created,ssc_conversation_status_changed - Added
ssc_channelsfilter for channel registry,ssc_settings_tabs+ssc_register_settings+ssc_sanitize_optionsfor shared settings,ssc_register_rest_routesfor REST extension,ssc_conversation_sidebar+ssc_conversation_reply_footerfor admin UI panels,ssc_frontend_config+ssc_enqueue_frontendfor bubble extension - Added `SSC_Chat :external_inbound()
andSSC_Chat::get_or_create_external_conversation()` public helpers so channel add-ons can route inbound messages into core without duplicating participant/message logic - Added
channelcolumn tossc_conversations(default'website') with one-shot backfill fromssc_discord_threads - Added front-end JS hook system at
window.ssc.hooks(inline ~40-line lib, matcheswp.hooksAPI surface) firingssc.bubble.opened/closed/rendered/messageSent/messageReceivedand assc.bubble.welcomeMessagefilter - Added admin JS hook events
ssc.admin.conversationsLoadedandssc.admin.conversationRowRenderedviawp.hooks(admin.js now declares wp-hooks as a dependency) - Refactored Discord integration to use the new extension API — moved tab/section/fields registration, REST routes, message-lifecycle listeners, and admin renderers from core classes into
class-ssc-discord.php. Discord is now the reference implementation of the add-on API while remaining bundled with core. - Converted
SSC_Admin::field_*andsection_*settings renderers to static so add-ons can reuse them - Database schema bumped to v4.0.0
- Note hook signatures may change without deprecation notices until the first commercial add-on ships. Once that happens the documented relaxed-deprecation policy applies (deprecations stay live for at least two minor versions).
External Images 3.35
- Added new postmeta filter to add front-end gallery compatibility to latest Houzez theme – they no longer use metabox for their metadata
Super Speedy Imports 2.55.3
- Performance gallery image attachment rewritten with bulk database writes instead of per-image round-trips, saving significant time on large galleries. Existing gallery entries you added manually are preserved.
- Performance the postmeta-update stage now warms the database cache up front, avoiding a slow cold-cache first update on large imports.
Super Speedy Imports 2.55.2
- Fixed with the opt-in "Merge duplicate term slugs" policy, hierarchical terms whose slug had been auto-renamed to avoid a clash (e.g. a second
T-Shirtsunder a different parent) could fail to import. They now match by name as well as slug. - Performance reworked the hierarchical taxonomy update to use an indexed temporary table, speeding up large taxonomies and sidestepping some database-version optimiser quirks.
Super Speedy Imports 2.55.1
- Improved diagnostics the postmeta-update stage now prints per-key progress (name, row count, elapsed time) so a slow individual update is visible instead of the stage appearing to hang, and failures to import hierarchical terms now report the likely cause (e.g. collation mismatch or an invisible character) rather than a raw row dump.
Super Speedy Imports 2.55.0
- Performance image URL to attachment matching now uses a dedicated lookup table, giving fast constant-time lookups regardless of URL length (including long CDN-signed URLs that previously matched poorly).
- Fixed a gallery query that could hang for 20+ minutes on catalogues where many products share the same image URLs.
- A one-off migration builds the lookup table on the first import after upgrading. New
wp ssi resync-image-lookupcommand rebuilds it on demand after manual media-library edits or a backup restore. - Note for add-on / custom-template authors: stages that looked up an attachment by the old
original_image_urlpostmeta should now use thewp_ssi_image_lookuptable.
Super Speedy Imports 2.54.4
- Performance CSVs where many products share the same image URL (placeholders, product-family hero shots, etc.) no longer re-download that image once per product. Only the first occurrence is fetched; the rest reuse the same attachment. A 50,000-product CSV with 5,000 unique images now does 5,000 downloads instead of 50,000.
- Performance image downloads now distribute evenly across parallel workers regardless of CSV ordering. Previously certain orderings could leave one worker doing all the work while the others idled.
- Combined, a large import with lots of repeated image URLs can drop from around 5 hours to 5-10 minutes.
- Note products sharing an image URL now share a single attachment and its metadata (alt / title / caption / description), which matches standard WordPress behaviour. Nothing changes for CSVs with unique image URLs.
Super Speedy Imports 2.54.3
- New
ssi_allow_private_image_hostsfilter to opt into fetching images from private / loopback / LAN hosts. Default off (secure by default); useful for staging setups or an internal image server. Only the private-IP rejection is bypassable, and only for hosts you explicitly allow.
Super Speedy Imports 2.54.2
- Critical fix:
--file=(import an alternate CSV) was ignored by parallel workers, so multi-worker imports loaded the original file instead. It is now applied correctly across all workers. - Critical fix:
--show-sqlbehaved incorrectly on multi-worker imports, where workers could execute writes the parent was only meant to print. It is now safe across all workers. - Improved ACF / SCF custom-field import support, including groups, repeaters and multi-value choice fields, plus a warning if a mapped ACF field has been deleted, renamed or changed type since you saved the import.
Super Speedy Imports 2.54
- New
ssi_stage_startingandssi_stage_endingaction hooks fire around every stage, so add-on plugins can extend any stage (current or future) without modifying core code. - New ACF / SCF custom-field import support (Phase 1), writing postmeta via bulk SQL for around 17 field types including text, number, date/time, select, checkbox, radio, true/false, WYSIWYG, link, group and repeater. Image, file, gallery, flexible-content and multi-value relational fields are not yet covered (handled separately or planned for a later phase).
- Changed the database schema upgrade check now also runs at the start of CLI / cron imports, so sites that auto-update without visiting wp-admin stay on the correct schema.
Changelog summary by plugin
Scalability Pro
Speed up your whole site – big catalogues, big databases, no re-architecture
- Latest version6.29.24 (15th August 2026)
- Last 30 days0 updates
- Last 90 days33 updates
Super Speedy Coming Soon
Build a launch waitlist – countdown and email capture on any product
- Latest version1.7.6 (12th August 2026)
- Last 30 days0 updates
- Last 90 days3 updates
Delayed Image Import
Stop image servers throttling your imports – download them later
- Latest version2.28.6 (12th August 2026)
- Last 30 days0 updates
- Last 90 days3 updates
Super Speedy Performance Analysis
Find which plugin is actually making your site slow, with proof
- Latest version0.18.0 (12th August 2026)
- Last 30 days0 updates
- Last 90 days77 updates
Super Speedy Ajax Prices
Fully cache your shop – correct prices, stock and dynamic pricing for every visitor
- Latest version1.13.13 (11th August 2026)
- Last 30 days0 updates
- Last 90 days4 updates
Super Speedy Chat
Own your live chat – real-time, self-hosted, fast, reply straight from Discord/WhatsApp
- Latest version1.14.1 (11th August 2026)
- Last 30 days0 updates
- Last 90 days11 updates
Country Based Prices
Show every visitor prices in their own currency, correct on a fully cached store
- Latest version1.13.2 (11th August 2026)
- Last 30 days0 updates
- Last 90 days1 updates
Super Speedy Filters
Fast product filters and pretty, indexable permalinks on every archive
- Latest version6.44.0 (6th August 2026)
- Last 30 days0 updates
- Last 90 days0 updates
Super Speedy Imports
Easy to use. Built for speed.
- Latest version2.85 (6th August 2026)
- Last 30 days0 updates
- Last 90 days0 updates
External Images
Keep your images off your server – on a CDN, S3, anywhere
- Latest version3.43 (3rd August 2026)
- Last 30 days0 updates
- Last 90 days0 updates
Fullscreen Typeform
Put a Typeform full screen on your own domain, with your own branding
- Latest version2.0.0 (27th July 2026)
- Last 30 days0 updates
- Last 90 days0 updates
Super Speedy Search
Speeds up front-end and wp-admin search
- Latest version5.57.1 (22nd July 2026)
- Last 30 days0 updates
- Last 90 days0 updates
Auto Infinite Scroll
SEO-friendly infinite scroll that keeps your place on the back button
- Latest version1.70 (22nd July 2026)
- Last 30 days0 updates
- Last 90 days0 updates
Super Speedy Sitemaps
All other sitemaps were so slow, we built our own
- Latest version1.10.4 (20th July 2026)
- Last 30 days0 updates
- Last 90 days0 updates
Super Speedy Archives
Category, tag, brand and author archives that stay fast as the catalogue grows
- Latest version3.1.2
- Last 30 days0 updates
- Last 90 days0 updates
