ZenCart configuration tips

Default Tax Class :
To set a default Tax Class for new-products, find out the tax class ID number in Admin> Locations/Taxes> Tax Classes and enter this ID in the field Product Price Tax Class Default – When adding new products? in the Admin> Catalog> Product Types menu.

Weights and Prices attributes:
Attribute Prices can be entered with a prefix of + or – or blank

  • + and blank will add the attribute price
  • – will subtract the attribute price
  • When you Price by Attribute, the price you enter here will be added to your base price, whether you define a + prefix or not.

Weight can be entered optionally if it effects the product weight with a prefix of + or – or blank

  • + and blank will add the attribute weight
  • – will subtract the attribute weight

The prefixes are set in the attributes_controller webpage :

ZenCart Attributes

ZenCart Attributes

Attribute flags:
The default values for the attribute flags on the attributes_controller webpage (see image above) are set with the following options on the product type info layout webpage :

  • ARTWORK Attribute is Display Only
  • ARTWORK Attribute is Free
  • ARTWORK Attribute is Default
  • ARTWORK Attribute is Discounted
  • ARTWORK Attribute is Included in Base Price
  • ARTWORK Attribute is Required

Zen Cart : The Art of E-Commerce II – Installation

Version 1.3.8a of the free open source shopping cart software “Zen Cart” can be downloaded from the official website. The installation guide is available at the same site in the tutorials section, a basic checklist to set up the shop and get it operational is included in the wiki section.

I installed a demo-version at my site www.web3.lu in the folder store_demo . I used the FTP program FileZilla to upload the software. The database can be managed with dbadmin. The MySQL version is 4.0.13.

After starting the installation, I received the error message that CURL is not compiled into PHP. CURL is required by some payment and shipping modules in order to talk to an external server to request real-time quotes or payment authorizations. An alert indicates that “Register Globals = ON”. Zen Cart™ can work with the “Register Globals” setting on or off. However, having it “off” leaves your system somewhat more secure. Another error message indicates that “PHP Safe Mode = ON”. Zen Cart™, being a full-service e-Commerce application, does not work well on servers running in Safe Mode. Two other alerts indicate for information that “PHP open_basedir restrictions = /www/provider/sarapro/pages” and that “PHP Output Buffering (gzip) = OFF”.

The database server is “ptmysql.pt.lu”, the name of the database is “sarapro”, the table-prefix is “store_demo” (to avoid confusions it’s better to end the prefix with _). Database sessions are stored in the database, the SQL cache method is set to “none”.

The physical path to Zen Cart™ is “/www/provider/sarapro/pages/store_demo”, the URL is “http://www.web3.lu/store_demo”. SSL is not activated. The phpBB forum is not installed.

The following initial values have been entered for the store setup:

  • Store Name : ARTGALLERY DEMO
  • Store Owner : Sara Proft
  • Store Owner email : alipa@saraproft.com
  • Store Country : Luxembourg
  • Store Zone : Alabama (Europe, default, nothing or Luxembourg does not exist)
  • Store Address :ARTGALLERY DEMO 36, rue Vullesang L-4853 Rodange Luxembourg
  • Default Language : English
  • Default Currency : Euro
  • Store Demo : yes
  • ZenCart update : no

I declared myself as administrator. After the succesful installation, I changed the proprieties of the config files on the server to “read only” and I deleted the install-folder for security reasons. The store setup values are registered in the config files. Congratulations: the demo-shop is working as expected.

Following tables have been created in the database sarapro (with the prefix store_demo) :

  • address_book
  • address_format
  • admin
  • admin_activity_log
  • authorizenet
  • banners
  • banners_history
  • categories
  • categories_description
  • configuration
  • configuration_group
  • counter
  • counter_history
  • countries
  • coupon_email_track
  • coupon_gv_customer
  • coupon_gv_queue
  • coupon_redeem_track
  • coupon_restrict
  • coupons
  • coupons_description
  • currencies
  • customers
  • customers_basket
  • customers_basket_attributes
  • customers_info
  • customers_wishlist
  • db_cache
  • email_archive
  • ezpages
  • featured
  • files_uploaded
  • geo_zones
  • get_terms_to_filter
  • group_pricing
  • languages
  • layout_boxes
  • manufacturers
  • manufacturers_info
  • media_clips
  • media_manager
  • media_to_products
  • media_types
  • meta_tags_categories_description
  • meta_tags_products_description
  • music_genre
  • newsletters
  • nochex_apc_transactions
  • nochex_sessions
  • orders
  • orders_products
  • orders_products_attributes
  • orders_products_download
  • orders_status
  • orders_status_historystore_demoorders_total
  • paypalstore_demopaypal_payment_status
  • paypal_payment_status_history
  • paypal_session
  • paypal_testing
  • product_music_extra
  • product_type_layout
  • product_types
  • product_types_to_category
  • products
  • products_attributes
  • products_attributes_download
  • products_description
  • products_discount_quantity
  • products_notifications
  • products_options
  • products_options_types
  • products_options_values
  • products_options_values_to_products_options
  • products_to_categories
  • project_version
  • project_version_history
  • query_builder
  • record_artists
  • record_artists_info
  • record_company
  • record_company_infostore_demoreviews
  • reviews_description
  • salemaker_sales
  • sessions
  • specials
  • tax_class
  • tax_rates
  • template_select
  • upgrade_exceptions
  • whos_online
  • zones
  • zones_to_geo_zones

I tried to install the product type book from Paul Hailey. When I run the SQL patch to create the book product tables, I receive the error message “1064 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ‘ENGINE=MyISAM’ at line 1
in: [CREATE TABLE store_demobook_authors”.

To fix this problem, I run the following example to test the syntax with success :

CREATE TABLE shop (
article INT(4) UNSIGNED ZEROFILL DEFAULT ‘0000’ NOT NULL,
dealer  CHAR(20)                 DEFAULT ”     NOT NULL,
price   DOUBLE(16,2)             DEFAULT ‘0.00’ NOT NULL,
PRIMARY KEY(article, dealer));
INSERT INTO shop VALUES
(1,’A’,3.45),(1,’B’,3.99),(2,’A’,10.99),(3,’B’,1.45),
(3,’C’,1.69),(3,’D’,1.25),(4,’D’,19.95);

The table store_demoshop was created with the correct values.

After deleting the default statement ENGINE=MyISAM, the patch was executed correctly and 169 statements have been processed. The following additional tables have been created in the database sarapro:

  • book_authors
  • book_authors_info
  • book_color
  • book_color_description
  • book_condition
  • book_condition_description
  • book_genre
  • book_genre_description
  • book_type
  • book_type_description
  • book_dd1
  • book_dd1_description
  • book_dd2
  • book_dd2_description
  • book_dd3
  • book_dd3_description
  • book_dd4
  • book_dd4_description
  • book_dd5
  • book_dd5_description
  • book_dd6
  • book_dd6_description
  • books_to_authors
  • books_to_genres
  • books_to_types
  • books_to_languages
  • books_to_dd1
  • books_to_dd2
  • books_to_dd3
  • books_to_dd4
  • books_to_dd5
  • books_to_dd6
  • product_book_extra

Finally I added the auction product type developped by Bramnick which is available at the Free Software Addons on the ZenCart website. After uploading the additional files, the SQL patch processed succesfully 17 statements.