From Zen Cart(tm) Wiki
Revision as of 02:42, 26 June 2006 by Themacgeek (talk | contribs) (Information Pages)
Jump to: navigation, search

This is an overview for all pages in ZenCart version 1.2.4. (I did not yet examine version 1.3.0 but I do not think that is very different) For me making this was very useful for understanding and getting an overview of ZenCart.

Customising Pages

You can customise the visual aspects and function of many standard pages by visiting the following menus in the Admin utility (especially to hide or display pieces of text):

You can customize the displayed text of many standard pages by visiting the following menus in the Admin utility:

Customising language files

Advanced Customisation - You can customise the text in the language files. There is a language file for each page with the same name in the directory myshop/includes/languages/english. E.g. the page product_info has a language file called product_info.php in this directory. There is also a general language file for common text in more then one pages: myshop/includes/languages/english/index.php. Before changing copy this file to the directory myshop/includes/languages/english/mytemplate where mytemplate is the name of the template you are using.

Customising template files

Another advanced option is customizing the template files. There is a template file for each page with the almost same name in the directory myshop/includes/templates/template_default/templates. E.g. the page product_info has a template file called tpl_product_info_display.php and tpl_product_info_noproduct.php in this directory. Before changing, copy this file to the directory myshop/includes/templates/mytemplate/templates, where mytemplate is the name of the template you are using.

Creating new pages

You may want to add additional pages to your Zen Cart website. For a description of basic steps you should follow, see:

Overview of pages

Frequently Used Pages

Name Description Remarks
index Home Url:

Customising: edit define_main_page.php (Define Pages Editor)

index (with category icons) Shows product subcategories icons in the center part of the webpage when choosing a category without products in. Url: &cPath=1 (example in default demo shop)
index (with product listing) Shows products listing in the center part of the webpage when choosing a category with products in. Url: &cPath=4 (example)
product_info Product details Url: &products_id=94 (example in default demo shop)
shopping_cart Show shopping cart Url:
info_shopping_cart Help page Shopping cart Url:

Checkout Pages

Name Description Remarks
checkout_shipping Checkout 1 (shipping) Url:
checkout_shipping_address Checkout 1a (shipping address) Url:
checkout_payment Checkout 2 (payment) Url:
checkout_payment_address Checkout 2a (payment address) Url:
checkout_confirmation Checkout 3 (ask for confirmation) Url:
checkout_success Checkout 4 (checkout done) Url:

Search Pages

Name Description Remarks
advanced_search Advanced search Url:
advanced_search_result Advanced search result Url: &search_in_description=1&keyword=geit (example)
popup_search_help Help page Advanced search Url:

More Catalog Pages

Name Description Remarks
products_all Show all products Url:
products_new Show new products Url:
specials Show special products Url:
featured_products Show featured products Url:

Information Pages

Name Description Remarks
conditions Conditions Url:

Customising: edit define_conditions.php (Define Pages Editor)

cookie_usage Cookie usage Url:
privacy Privacy Statement Url:
shippinginfo Help page Shipping Url:

Customising: edit define_shippinginfo.php (Define Pages Editor)

contact_us Contact page Url:

Customising: edit define_contact_us.php (Define Pages Editor)

Login Pages

Name Description Remarks
login Login Url:
logoff Logout Url:
password_forgotten Password forgotten Url:
create_account Create account Url:
create_account_success Message Account created Url:

Personal Pages

Name Description Remarks
account Personal Home Page Url:
account_edit My Account Information Url:
account_history My Orders Url:
account_history_info My Orders Details Url: &order_id=1 (example)
account_newsletters Subscribe Newletter Url:
unsubscribe Unsubscribe Newletter Url:
account_notifications  ? Url:
account_password Change Password Url:
address_book My Address Book Url:
address_book_process My Address Book ? Url:

Other pages

Name Description Remarks
tell_a_friend Tell a frined Url: &products_id=94 (example)
product_reviews Reviews Url: &products_id=94 (example)
product_reviews_info Reviews Url: &products_id=94 (example)
product_reviews_write Login Url: &products_id=94 (example)
reviews Reviews Url: &products_id=94 (example)
info_paypal error info_paypal Url:
install error install Url:
popup_shipping_estimator popup_shipping_estimator Url:
page_2 Extra Information Page Url:
page_3 Extra Information Page Url:
page_4 Extra Information Page Url:
customers_authorization  ? Url:
gv_redeem  ? Url:
gv_send  ? Url:
gv_faq  ? Url:
checkout_process Login Time Out Url:
time_out Login Time Out Url:
document_general_info document_product_info Url:
document_product_info  ? Url:
download  ? Url:
down_for_maintenance down_for_maintenance Url:
popup_attributes_qty_prices popup_attributes_qty_prices Url:
popup_coupon_help popup_coupon_help Url:
popup_cvv_help Help for Visa, Mastercard, Discover 3 Digit Card Verification Number Url:
popup_image  ? Url:
popup_image_additional  ? Url:
product_free_shipping_info  ? Url:
product_music_info  ? Url:
redirect Reviews Url:
ssl_check Security Check Url:

Developers info

Every page has a page name. To find out this name you need to evaluate the $_GET['main_page'] (or $current_page_base) variable. There are several php-files related to one page. At least there is a module file, a template file and a language file. The filenames are following strict naming convention in order to work within the Zencart php framework.

Module header

Each page has a module header file in which some variables could be set for a specific page. This will be parsed before <html> is send to the browser. The name of this file is:

  • includes\modules\pages\PAGENAME\header_php.php


Each page has a template file in which the html-related code is in. The name of this file is (where PAGENAME is the name of the page):

  • tpl_PAGENAME_default.php (default name for most pages)
  • tpl_PAGENAME_info.php (for the detail product info pages)
  • tpl_index_categories.php (for a with categories)
  • tpl_index_product_list.php (for a page with a product list)

These files resides in:

  • includes\templates\template_default\templates\tpl_PAGENAME_default.php

or when using YOUR_TEMPLATE as template selection you could override it:

  • includes\templates\YOUR_TEMPLATE\templates\tpl_PAGENAME_default.php


A page could have an optional main_template_vars file. In this file some variables could be set for a specific page. An important variable is $tpl_page_body. When this variable is set another template file could be used when needed. For example the index page uses the tpl_index_default.php template file which is in fact the home page. When the customer chooses a specific category (e.g. computers, dvd, games) they still view the index page but with another template file: tpl_index_categories.php. To find out which non default template a page uses look in:

  • includes\modules\pages\PAGENAME\main_template_vars.php


Each page has for each language his own language file. In this files are all text related defines for a specific page and language. This file is:

  • includes\languages\YOUR_LANGUAGE\PAGENAME.php

or when using YOUR_TEMPLATE as template selection you could override it:

  • includes\languages\YOUR_LANGUAGE\YOUR_TEMPLATE\PAGENAME.php, e.g.
  • includes\languages\english\default\site_map.php

There is also a global language file which can be found outside the YOUR_LANGUAGE folder. This file is:

  • includes\languages\YOUR_LANGUAGE.php

or when using YOUR_TEMPLATE as template selection you could override it:

  • includes\languages\YOUR_TEMPLATE\YOUR_LANGUAGE.php, e.g.
  • includes\languages\default\english.php