Documentation Home

# Welcome to Zen Cart™

Dear Zen Cart User,

Zen Cart is made available to you for your use, addition, changes, modification, etc. without charge, under Version 2 of the GNU General Public License.

While we do not charge for this software, donations are greatly appreciated, each time you install a new version, to help cover the expenses of maintenance, upgrades, updates, the free support forum and the continued development of this software for your online E-Commerce store.

Donations can be made on the Zen Cart Team Page

We appreciate your support.
The Zen Cart Team

# About PHP versions

Zen Cart v1.5.7 is designed for PHP 5.6 to 8.0, with MySQL 5.1 to 5.7 (or MariaDB 10.0-10.5) and Apache 2.2/2.4
(Some older plugins may show deprecations and warnings when using PHP 8)

# Upgrade Instructions

See the online docs for Release-Specific considerations to note regarding this version. https://docs.zen-cart.com/user/upgrading/
This document only mentions the actual changes specific to v1.5.7 since v1.5.6, and additional notes may have been added to the online notes.

## From v1.5.6

If you are already using v1.5.6 and *have NOT customized or altered* any of the files listed in the changed_files-v1.5.7.html document, then simply replace those files with the new files as listed.

If you have *customized or altered* certain files, you must merge your customizations into the new versions of those files.

If you are using Addons/Plugins that use modified versions of those files, you must compare those plugin files to the original Zen Cart files of the version for which those plugins were built, to identify the modifications. Subsequently you must replicate those modifications in the v1.5.7 file.

## From v1.5.5 or older

If you are upgrading from a version OLDER than v1.5.6, then please do a standard site upgrade. Be sure to review all the links in this article, including tips on staging the upgrade in a separate directory/folder.

# CHANGELOG - List of Changed Files

For a list of files that have been changed since v1.5.6, see the changed_files-v1-5-7.html document.

# Upgrading to the New Responsive Classic Template added in v1.5.5

Zen Cart contains a newer "responsive_classic" template, which performs well on mobile devices such as phones and tablets. If you are upgrading an older site, we recommend that you use this template (rather than template_default or any older non-responsive template) as the starting point for your upgraded site.

# Upgrader Notes About Changes to template_default

Upgraders should make sure they update *BOTH* template_default *AND* their custom templates as described here

In Zen Cart the template_default directory contains the master copy of all storefront page templates.

The normal procedure for customizing template files for use in your own personalized template is to make a copy of the corresponding file from template_default, put it into your own template folder (and matching folder structure), and make your customizations in that copy of the file.

This way the only files you need in your personalized template folder are those that you have altered in some way from template_default.

With that explained, it is important that whenever you upgrade your site, you should also inspect ALL the template_default files to determine which changes in those files need to be replicated in your customized files. Comparison/Merging Tools are essential for this process; see the Zen Cart Developer Tools for recommendations.

The process is simple: compare the template_default directory files from your *old* version to the template_default files in the *new* version, and replicate any differences in the files in your custom/personalized template in your store. If you based your template on responsive_classic, you should also compare and merge any changes from that template.

Then, and only after you have done all those comparisons and updated your customized files in your custom template folder, you will copy the template_default files from the new version into the template_default directory of your store. This way you will be left with updated personalized files *and* updated template_default files.

This way you will be left with updated personalized files *and* updated template_default files.

# What's New ... Changes from prior versions

## The fixes/changes in v1.5.7d since v1.5.7c include:

- (Note: no database changes between v157/v157a/v157b/v157c/v157d, so no need to run zc_install again if v157/v157a/v157b/v157c is already installed.)
- All: Security Patches Applied.
- All: Upgraded PHPMailer to version 6.5.1
- Admin: Address missing/inconsistent HTML characteristics
- Admin: Remove call to inspectAndUpdate from every request and only call on plugin_manager page
- Admin: Fix width of comments block in invoice
- Admin: include plugins in search
- Admin: Sanitize Output
- Core: Fix typo: langauages -> languages
- Core: Accommodate field types with zero length
- Core: Fix "Uncaught TypeError: mysqli_close(): Argument #1 ($mysql) must be of type mysqli, bool given
- Core: Fix coupon min. required calculation wrong when calculated from = All Products
- Storefront: Clean HTML for product_reviews_write, correcting PHP notices regarding missing variables.
- Core: paypaldp/paypal_curl, correcting PHP notices, partial payflow-uk correction.

## The fixes/changes in v1.5.7c since v1.5.7b include:

- (Note: no database changes between v157/v157a/v157b/v157c, so no need to run zc_install if v157/v157a/v157b is already installed.)
- All: Security Patches Applied.
- All: Improved PHP 8.0 compatibility.
- All: Upgraded PHPMailer to latest version 6.3.0
- All: Fix some "is_countable" or "must be Array or Countable" errors/notices.
- Admin: Accessibility improvements
- Admin: Fix incorrect "required" error when editing banners if start/end date existed
- Admin: Fixed incorrect URL generated when accessing customer-submitted images.
- Admin: Improve plugin compatibility on category/product-listing page.
- Admin: Attributes Controller fix for broken button, and improved compatibility with plugins.
- Admin: Improved DTK search for zc_plugins.
- Admin: Fix long-time error in zen_copy_attributes() function.
- Admin: Fix error which occurred when resetting download timer.
- Storefront: Fix attribute-related error causing "A-non-numeric-value-encountered-in-shopping_cart.php".
- Storefront: Restore "Always Show Categories on Main Page" feature from v156
- Storefront: Improved compatibility with Image Handler for empty image dimensions.
- Storefront: Added new capabilities to breadcrumb class so templates can override defaults.

## The fixes/changes in v1.5.7b since v1.5.7a include:

- (Note: no database changes between v157/v157a/v157b, so no need to run zc_install if v157/v157a already installed.)
- Admin: Properly handle cmd parameter.
- Admin: Remove deprecated javascript init() calls.
- Storefront: Capture order weight.
- Storefront: Limit field lengths in account creation.

## The fixes/changes in v1.5.7a since v1.5.7 include:

- Admin: Correct issues with adding category images.
- Admin: Fix product-available date handling.
- Admin: Improve order printing.
- Admin: Fix product copying operation, particularly in relation to master category id.
- Admin: Search now finds disabled items.
- Admin: Recent Orders dashboard widget may now be configured to exclude attributes in popover rows for performance.
- Admin: Popover will not show model if product does not define a model number.
- Admin: CSS paths fixed in Banner Manager, Coupon Exporter.
- Admin: Add attribute images to invoice and packing slip.
- Core: Set samesite cookie parameter (site must be run entirely https)
- Core: Ensure .htaccess permits .woff2 and svg files to be served.
- Core: Fix new/featured/all pages not adding to cart.
- Core: Fix allowing special characters in passwords (admin and storefront).
- Core: Fix issue with adding items with single-valued attributes from listing page.
- Core: PHPMailer Update to v6.1.8.
- Core: Ensure error messages are displayed after a page redirect.
- Core: Fix early issues with plugin manager.
- Core: Improve performance of email page.
- Core: Fix small layout issues in responsive_mobile CSS.
- Core: Introduce grid layout feature for listing pages.
- Core: Ensure external pages are loaded with noreferrer.
- Core: Hide shipping modules where appropriate.
- Core: Fix PHP notices produced by more recent versions of PHP.
- Core: Fix multilanguage issues with Sales Report with Graphs.
- Core: Tax behavior aligned between admin and storefront.
- Core: Fix issues in also purchased products display.
- Core: Fix button truncation on checkout confirmation page.
- Core: Improve mobile display of EZ-Pages.
- Core: Fix PayPal issues which could result in missed orders.
- Core: Ask a Question improvements.
- Core: Simplify use of private template on storefront.
- Core: New config variable "Disabled Product Status for Search Engines" allows stores to optionally not throw 404 for disabled products.
- Core: Notifier calls during checkout now include the order number.
- Core: Notifier NOTIFY_PAYPALWPP_DISABLE_GET_OVERRIDE_ADDRESS added.
- Define Pages: Correct issues with editing.

## The most notable improvements and bugfixes in v1.5.7 since v1.5.6 include:

- Core - Many files have been updated for compatibility with PHP 7.2, 7.3 and 7.4. These changes, along with updating your PHP version, will make your cart faster.
- Storefront - Products with single-valued attributes (such as downloads) can now be added to the cart from the listing page.
- Storefront - Site map now includes all EZ-Pages
- Storefront - Product page now includes Ask a Question
- Storefront - Contact Us page now includes a telephone number
- Storefront - Improved handling of product restrictions such as units and minimum quantities.
- Storefront - Define page added to shopping cart page for static content.
- Storefront - The responsive classic template now meets accessibility standards for both desktop and mobile.
- Admin - Plugin Manager for admin side plugins now available, consolidating management and file placement.
- Admin - Admins can now login to a customer account (login as that customer), to place an order on their behalf.
- Admin - Order Status may be updated from the order listing screen.
- Admin - Order Status emails are now sent in the language of the order.
- Admin - Order Status dropdown can now be sorted to match your business workflow.
- Admin - Order Status notification behavior for an Order Status update (send email/do not send email/hide update) may now be configured by an admin switch.
- Admin - Order Listing - hover for quick view of the products ordered or to see customer comments, without opening the order details. (Inspired by Info-At-A-Glance plugin).
- Admin - Improved customer search.
- Admin – Products to Categories Link Manager - Addition of a global tool to copy linked categories to another product.
- Admin – Product Copy expanded to include copy of metatags and linked categories.
- Admin - Setting added to auto enable (make available) product on or after the set available date.
- Admin - Validation for integer min and max values and email addresses.
- Admin - Improved configuration settings descriptions.
- Admin - Countries page is easier to perform enable/disable actions.
- Admin - Improved error messaging.
- Admin - Help links to the documentation website added to all pages.
- Admin - Products Viewed report now excludes bots and admins, and its database storage restructured to improve site performance.
- Admin - Alphabetical sorting of Reports and Tools menus.
- Admin - Validation and alerts for updating configuration settings, and other updates to sanitization layer.
- Admin - Improvements in Option Name/Value management.
- Admin - UI improvements for Attributes Controller, Featured, Option Names Manager, Option Values Manager, Products to Multiple Categories, Specials.
- Admin - Fixed last-order details on customer preview box on right.
- Email - SPAM prevention built in to forms (Credits @davewest for zenNonCAPTCHA).
- Email - Improvements made to increase email deliverability.
- Email - Untranslatable text removed from email templates.
- Checkout - Updated Square Payment module. Start taking credit card payments in just 5 minutes! See Square Setup.
- Checkout - Correction of order total layout issues on mobile in responsive_classic template.
- All known v1.5.6 bugfixes and security fixes are included in v1.5.7
- ... and many other incremental improvements to make Zen Cart more efficient, more robust and easier to use.

A detailed list of all edits to all files can be seen on Github at: v1.5.6...v1.5.7b
A full list for just v1.5.7a-to-v1.5.7b on Github at: v1.5.7a...v1.5.7b And a full list for just v1.5.7-to-v1.5.7b on Github at: v1.5.7...v1.5.7b

^^ Back to Top ^^

# Help and Support

For additional help and support, visit the Zen Cart Docs and the Zen Cart Support Forum.

Zen Cart is derived from: Copyright 2003 osCommerce
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE
and is redistributable under Version 2 of the GNU General Public License.

This software is OSI Certified Open Source Software.
OSI Certified is a certification mark of the Open Source Initiative.

Copyright 2003 - 2020 Zen Ventures, LLC
Zen Cart
www.zen-cart.com