CFWebstore®
Version 5.72
Setting up and Running Your StoreTable of Contents
Table of Contents 2
Introducing CFWebstore® 5
Why Fusebox? 6
Installing CFWebstore® 7
Main Settings 10
Designing Your Store 13
Color Palettes 13
Style Sheets 14
Custom Layouts 15
Category & Page Templates 16
Option Picklists 19
Organizing Your Site 20
Categories 20
Pages 24
Adding Your Products 27
Product List 27
Product Form 28
Display Tab 28
Pricing Tab 30
Quantity Discounts 32
Product Options 32
Product Addons 35
Product Images 36
Related Products 37
Standard Product Options 37
Standard Product Addons 39
Product Custom Fields 40
Product Copy 40
Store Specials and Discounts 42
Some Additional Tips on Discounts 44
Gift Certificates 45
Adding Store Features 47
Feature List 47
Feature Form 48
Related Features 49
Related Products 50
Access Keys 51
Memberships 51
Setting Up The Shopping Cart 54
Shopping Cart Settings 54
Tax Settings 55
Shipping Charges 56
Shipping Settings 56
Shipping Table 57
Country Shipping Rates 58
Shipping Methods 59
UPS Shipping 59
U.S.P.S. Shipping 61
Intershipper Shipping 61
Free Shipping Promotion 62
More Information on Shipping 62
Taking Payments 64
Payment Options 64
Card Processing 65
Managing Your Orders 68
Pending Orders 68
Order Details Screen 69
Customer Details 70
Order Status 70
Shopping Cart Details 71
Shipping Information 71
Purchase Orders 72
Edit Order Status Form 72
Basket Edit Form 73
Basket Dropshipping Form 73
In Process Orders 73
Order Shipping Screen 74
Billing Tab 74
Purchase Orders/Drop Shipping Tab 75
Purchase Order Status Screen 76
Filling Purchase Orders 77
Filled Orders 77
Reports 78
User Management 80
User Settings 80
User Manager 81
User Summary 83
User Groups 84
Setting Permissions 85
Access Admin 86
Category Admin 86
Feature Admin 86
Page Admin 86
Shopping Admin 87
User Admin 87
Customer Addresses 87
Accounts 89
Bulk Emails 90
Download Users 91
My Account Page 91
Programmer’s Guide 93
Differences From Basic Fusebox 93
Home Circuit 94
Access Circuit 94
Category Circuit 95
Page Circuit 96
Feature Circuit 96
Products Circuit 97
Shopping Circuit 99
Users Circuit 102
Custom Tags 104
UNIX Support 108
Store Searches 108
Verity Search 108
SQL search 109
Email Forms 109
User Registrations 110
Database Schema 110
Error Handlers 110
Adding New Payment Gateways 111
Typical Files Used for a Category Page 112
Additional Code Tips 115
Other Useful Sites And Products 116
Introducing CFWebstore®
CFWebstore® is a Cold Fusion application used for setting up an online store and shopping cart. While someone with no knowledge of Cold Fusion can use it, it is designed to be installed and set up by a web developer with at least some experience with this scripting language. If you’ve never used Cold Fusion before, you’ll learn quickly in the process!
To use CFWebstore®, you will need a web server running at least Cold Fusion 5.0 and preferably SQL Server as well. You can use Access for your database, but this is less secure and not ideal for busy online stores. While you can run your store on non-Windows servers and other databases, these are not “officially” supported and may require some minor changes to the code.
The new 5.0 version of CFWebstore® is coded to Fusebox 3 and introduces many new features and options. Take your time to explore the product and all it can do, and make good use of this documentation when you get lost! Why Fusebox?
Whether you are new to CFWebstore® or a previous user, you may wonder what is Fusebox and why we used it for the new version. Basically, Fusebox is a framework that outlines a way to organize the code. It includes a core set of files, and best practices for how to break down the rest of the application. It allows for separation, for instance, of the page display elements and the coding logic. It is the most commonly used framework by Cold Fusion developers at this time, and is used for other languages as well such as PHP.
What this means for CFWebstore® is that by coding in Fusebox, we are structuring the application in a way that anyone familiar with Fusebox can easily follow. Those new to Fusebox can easily find more information on it, and will be learning a methodology common to many Cold Fusion projects, rather than trying to learn a methodology no one else uses.
The common follow-up question is why Fusebox 3? At the time this product was being recoded, Fusebox 4 was still being developed, and no version was available at the time for Cold Fusion 5 servers, which we wanted to continue to support. Fusebox 3 is also considerably easier to learn for coders that are new to the methodology. At some point in the future, we will migrate the code to Fusebox 4 for the improved performance.
You don’t need to install anything on your server to use Fusebox. All the core files are already included with the software. However, you may want to edit the index.cfm page of your store so it only includes the core file needed for your server version, to improve performance as much as possible.
For more information on Fusebox, visit fusebox.org and halhelms.com. You can also find a bunch of good Fusebox 3 tutorials in your documentation directory and at http://bombusbee.com/downloads.main.htm. Installing CFWebstore®
CFWebstore® is not a self-contained software application with an executable setup file. It is essentially just a very large collection of Cold Fusion templates. To use CFWebstore®, you must install the files on a server that is running at least Cold Fusion version 5.0. Installation involves little more than extracting the files into the directory which you will be using to host your store. You don’t need to install any Fusebox files, those are included in the installation file. There are just a couple more things you need to do to get the store up and running.
· Setup the database. CFWebstore® comes with several databases. In the Database directory is the database with all the data for the sample store. If you prefer to start with a blank store, there is also a database that does not have any categories or products, etc, but includes the data needed to get started. For the best security, the database should be moved to a directory separate from the web files themselves. In addition, use Access to lock the database with a password. You can do this in Access under Tools-Security. You should also rename the database so it will not be easy for a hacker to locate it (and so it won't conflict with other CFWebstore databases on the server.) For the best security, use SQL Server instead. This provides much better protection for your information and is particularly recommended if you intend to store credit card numbers. A SQL Server backup file is provided or you can upscale from Acess using the Access Upscaling Wizard. When using the SQL backup, be sure to change the file location in the backup Options or you may have problems doing the restore. Always leave the database.cfm file in the database directory, this file is needed for the store to function properly.
· To upscale the database from Access to SQL Server, the best method is to use the upscaling wizard available in Access. After upscaling the database to SQL server from Access you will need to change some fields, as they convert to an ntext field which causes some problems in SQL server. Simply change the fields from ntext to a varchar(4000). The fields are ParentNames in the Category table and Options and Addons in the TempBasket table. If you are starting with the SQL backup file, no changes are necessary.
· If you are not able to do a restore or use the upscaling wizard, you can also use the SQL scripts that are provided to create the correct database structure remotely and then add the default data. To use the scripts, follow these steps:
o Create a new database in SQL server on your remote server
o Open Query Analyzer and select your new database on the toolbar.
o Open the cfwebstorefb.sql script file and run it. This will create the table structure, indexes, defaults, etc. needed.
o Open the cfwebstorefb_data.sql script file and run it. This will insert all the default settings, user data, states and countries, etc.
· While MySQL is not officially supported (not tested on), you can also convert the database from Access to MySQL and run the software with little difficulty. You will need to be running MySQL 4.1 or greater to run CFWebstore. Be sure to use a good conversion tool like DBTools Manager that will bring in all the correct field types and default values. Use the provided database schema to check the fieldnames and make sure they are not converted to lowercase or otherwise altered in anyway. You will also need to search for any cfqueryparam settings for CF_SQL_BIT and change them to CF_SQL_TINYINT as the former is not allowed for MySQL.
· Add a datasource in the Cold Fusion Administrator for your database. By default, the datasource name is "CFWebstore". You will probably prefer to use your store's name or some other more descriptive name. DON'T USE SPACES OR DASHES IN YOUR DATASOURCE NAME! While the Administrator will allow this, it may cause problems with your store, as the Datasource name is used when setting cookies. Also, be sure the first character of the name is a letter (not a number). Once the datasource is setup, edit the database.cfm file in the database directory with the name you are using and the username and password if the database has one. You can alternatively enter the username and password in the CF datasource definition, check with your ISP as to which method is most secure on their server. Generally defining it in the database.cfm with proper sandbox security is your best choice.
· Setup the UPS rates database. If you plan to use the internal UPS rate tables, these are found in a separate database. If your ISP is currently hosting other CFWebstores, this database may already be set up and all you will need to do is enter the datasource name on the database.cfm file. If not, you will need to have them install this file, or you can copy the tables into your main database and use one datasource for both. Just enter the same name for the UPS datasource name. However, it is recommended that these databases be kept separate to make updating the rates each year as easy as possible. NOTE: Currently the UPS tag is no longer being maintained and rates for 2006 have not been made available. If you wish to use UPS and need more recent rates, please contact us for information on acquiring code for using the UPS Online Tools. A FedEx API tool is available now as well.
· Install the CFX_Image tag. The install for this tag is found in the Webmaster directory. It is used for automatic creation of thumbnails in the product image gallery and resizing of images through the Image Manager. If you do not wish to use this tag or are not on a Win32 system, there is alternate code commented out that uses a CFC instead (CFMX required). You can also use the CFX_OpenImage tag which is available on some webhosts and also included in the Webmaster directory. This tag generally gives higher quality images than CFX_Image. Just do a search for CFX_Image in the store files to make either of these optional changes.
· Before making your store live, you will want to change the Administrator password. The default login is username "admin" and password "admin". After logging in, go to the My Account page and click on the link to change the current password. This will allow you to change the password for the Administrator. You can also use the admin tools to set up other administrator accounts.
· Before going live, you will also want to be sure to fill in your Store URL and Secure URL in the Settings table. These settings are used for various links in the store and for logging the user in securely and protecting the checkout and order viewing areas, so if they are not entered properly, you may find some things don’t work quite right! If you don’t have a secure server set up yet, and are just setting up your store, you can leave these settings blank. If you incorrectly enter these, you will need to correct it directly in the database and then add a “Refresh=Yes” to the URL to clear the cached settings.
· You’re now ready to start setting up your store! Spend some time going over all the various store options and pages and making sure your store is configured properly. You may want to make a diagram of how your site will be structured before beginning to create your categories and store pages. Pay particular attention to the configuration on each of the main settings pages:
1. Main Settings
2. Shopping Cart Settings
3. Payment Settings
4. Shipping Settings
User SettingsMain Settings
The Main Settings control a wide variety of options for your store. These will often have site-wide effects on how your store will work so take your time and make sure you understand what each does! Let’s go over each of the settings available here: