Plugin Updates
Keep your online store top notch with the latest and greatest Zen Cart plugins offered by Numinix.
Newest Plugins
- Release Date: May 13, 2026
- Release Date: May 13, 2026
- Release Date: May 13, 2026
- Release Date: May 13, 2026
- Release Date: May 13, 2026
- Release Date: May 13, 2026
- Release Date: May 13, 2026
- Release Date: June 01, 2026
- Release Date: June 03, 2026
- Release Date: June 03, 2026
Recently Updated Plugins
- Version: 4.2.0Release Date: June 05, 2026Updates: More infoClose
- Added Video Upload custom field type
- Added HTML5 video display on storefront
- Added drag-and-drop upload, preview, and existing-file selection
- Improved upload validation and safer file/path handling
- Fixed duplicate NPF fields in admin
- Improved ZC 2.0.1 compatibility with legacy hook fallback
- Version: 1.2.1Release Date: June 03, 2026Updates: More infoClose
- Summary
- Restores click and open tracking on every install. Without this fix:
- Every email link bounced through page_not_found (so customers landed on whatever URL the storefront's catch-all 301 happened to map the missing page to — on Redline Stands every campaign URL silently resolved to a single random product page).
- Every open pixel returned an empty body (so the events table stayed empty and every report showed 0% open rate / 0% click rate).
- Storeowners on 1.2.0 are strongly encouraged to upgrade. No DB migration required — the only changed files that affect a running site are the two endpoint scripts and TrackingUrlBuilder.php.
- Fixed — four root causes, peeled layer-by-layer
- TrackingUrlBuilder pointed at the wrong path. buildClickUrl() / buildOpenUrl() emitted {store_url}/transactional_email_click.php — a path that doesn't exist at the catalog root, because the endpoints actually live at zc_plugins/TransactionalMarketing/v1.0.0/tracking/. New TRACKING_ENDPOINT_DIR class constant prefixes both URLs with the real plugin location, co-located with the builder so the on-disk path and the emitted URL can no longer drift apart.
- dirname(__DIR__, 3) landed on zc_plugins/, not the catalog root. The deep file path puts the catalog FOUR dirs up, not three. The file_exists() guard tripped before Zen Cart could load, so direct hits to the endpoint returned a hard 404. Both endpoints now use dirname(__DIR__, 4) with an explanatory comment.
- zc_plugins/.htaccess denies every PHP file in the tree. Zen Cart 2.x ships a <FilesMatch ".*"> Require all denied rule that firewalls every PHP file under zc_plugins/ behind an allow-list of static-asset extensions only. The plugin's tracking/.htaccess previously tried to narrow the deny list — but a child deny cannot un-deny anything in the parent. The .htaccess now uses <FilesMatch "^transactional_email_(open|click)\.php$"> Require all granted to explicitly re-grant access to the two endpoint scripts while leaving every other file denied.
- Output-buffer the storefront init. Even after the path/htaccess fixes the click tracker still degraded from a 302 Location: … to a 200 OK with no Location header (and the open tracker would have leaked storefront warning text into the body of the 43-byte pixel). application_top.php pulls in the entire storefront environment and can emit warnings / debug output / stray whitespace under perfectly healthy configurations. Both endpoints now wrap the entire request in ob_start() at the very top and ob_end_clean() immediately before sending headers / body. The open tracker also gained an explicit Content-Length, and the click tracker now sets Cache-Control: no-store, no-cache, must-revalidate, max-age=0 so a stale cached 302 cannot pin every recipient of a campaign to whatever destination the first click happened to hit.
- chdir($zcRoot) before bootstrapping application_top.php. With all of the above in place, every live click still came back as 200 OK with an empty body and no Location header. Shutdown-handler tracing pinned the cause on a catchable fatal: require(includes/templates/template_default/templates/tpl_zc_install_suggested_default.php): Failed to open stream @ application_top.php:144. The template file is on disk — the problem is that application_top.php loads its own dependencies with paths relative to the current working directory (include('includes/configure.php'), require('includes/templates/template_default/…')). Every storefront page lives in the catalog root, so the CWD is always the catalog root for normal requests — but our endpoints live four levels deeper, so the CWD is tracking/ and every relative include silently misses. With configure.php missing, HTTP_SERVER / DIR_FS_CATALOG never get defined, app_top falls into the "config invalid → install suggested" branch on line 144, the relative-path require() of the install-suggested template also fails, and the script dies before the endpoint can issue its redirect / pixel. Both endpoints now call chdir($zcRoot) immediately before require_once $appTop, mirroring how a storefront page is executed. A try { … } catch (\Throwable …) belt-and-suspenders also wraps the entire bootstrap so any future fatal in app_top still leaves the output buffer intact and the endpoint can fall back to a bare redirect / pixel.
- Version: 2.0.0Release Date: May 29, 2026Updates: More infoClose
- Added admin pages for mapping Zen Cart customer fields to Mailchimp merge fields
- Added order lifecycle sync observer with upsert-based tracking across all order status transitions
- Added cart lifecycle queue sync support for abandoned cart tracking
- Added dedicated order payload helper to centralise ecommerce payload construction
- Added event queue with automatic retries and admin replay tool for failed sync jobs
- Added queue reliability and backfill tooling with bulk replay controls in the admin
- Added order reconciliation dashboard with classification filters, resync controls, and CSV export
- Fixed mailchimp_listMemberInfo member lookup returning incorrect results
- Fixed registration observer bug
- Hardened revenue observer store ID and member handling
- Applied input sanitization to after-sale observer
- Customer sync now uses lifetime paid order totals for accurate CLV data
- Improved tracking landing URL capture and Mailchimp campaign ID attribution
- Mailchimp product_variant_id values now derived from order product option hashes
- Cart payload variant IDs aligned with order attribute hashing logic
- Improved merge field mapping labels and hints in admin
- ZC field values now preserved after admin form update
- Removed legacy Numinix plugin loader class files
- Updated docs with corrected JS, improved styling, footer links, and copy-code feature
- Version: 4.0.0Release Date: May 29, 2026
- Version: 1.2.2Release Date: May 28, 2026
- Version: 7.3.0Release Date: May 26, 2026
- Version: 5.8.1Release Date: May 26, 2026
- Version: 2.0.1Release Date: May 11, 2026
- Version: 2.6.0Release Date: May 06, 2026
- Version: 1.0.1Release Date: April 30, 2026
Popular Free Plugins
- Number of Downloads: 7792
- Number of Downloads: 6042
- Number of Downloads: 4529
- Number of Downloads: 2395
- Number of Downloads: 2224






















.png)








