Details for developers

Admin Request Sanitization

How data is sanitized on the admin side

Adding a child table to the products table

How to add a table linked to the products table by a foreign key

Adding a field to the customers table

How to add a field to the customers table

Adding a field to the products table

How to add a field to the products table

Adding a Status History Record to an Order

How to use the zen_update_orders_history function

Admin cron jobs

Creating a cron job in your admin

Auto Inclusion System

What files are automatically included?

Building a Form

Adding a custom form to collect data

Building a Home Page widget

Adding information to the admin dashboard

Building a Report

Adding a custom report for your needs

Configuration Data Validation - About

How is data validation done for configuration values?

Creating a new Admin menu item

Best practices for adding a link to a menu

Creating or Modifying a table

Modifying the database schema

Displaying Custom Fields

How to show the custom fields you have added to the database

Extra Folders

extra_datafiles, extra_definitions, extra_functions and extra_configures

Init System

How Zen Cart bootstraps itself

Language Files - Developer Information on Array based Language files

Structure of Language Packs for Zen Cart 1.5.8 and above

Language Files - New vs Legacy in 1.5.8+

How legacy language defines are handled for Zen Cart 1.5.8 and above

Modifying a field in the products table

How to modify a field in the products table

Notifier Report

Output of the Zen Cart Notifier Report plugin

Notifiers - List of

A complete list of Zen Cart Notifiers

Observer/Notifier System

About notifiers and observers

PHP Idioms

Coding practices you will see in recent versions of Zen Cart

PHP Updates

Handling changes to PHP

Product Types

Creating custom products with different data requirements

Program Flow

Execution Path for a Zen Cart Page Visit

Querying the Database

Using QueryFactory

Sorting an Admin menu

How admin menus can be sorted

Template Settings and the tpl() function

Overriding global settings per-template


Shipping, Payment and Order Total Modules

View Builders

A set of classes to aid in building pages/tables

Last modified September 13, 2020 by Scott C Wilson (354bf51).