|
This item will contain an overview comparing the directory structures of the osCommerce, CRELoaded and Zen Cart open source shopping carts in general terms. It will contain screenshots and reader comments and feedback.
osCommerce 2.2rc1
| Zen Cart 1.3.8
| CRELoaded 6.2.11
|  |  |  | | | Overview of File Directory Structures | At the root of every web application is its file structure. A quick glance at the directories to the left reveals first and foremost that osCommerce has far fewer top level folders than its counterparts. This is mainly because osCommerce is the 'vanilla' flavour of all shopping carts. Zen Cart and CRELoaded have far more functional add-ons bundled with them than osCommerce. Whilst making osCommerce simpler to understand on initial setup, it means that there is less 'out of the box' functionality on offer.
As you probably know, all three carts have a store front (front end) and an administration section (back end). All files pertaining to the administration component come under the 'admin' folder. It is worth noting that Zen Cart has done away with the 'catalog' top level folder, but the main impact of this is to slightly change some of the values in the configuration.php file.
Since Zen Cart and CRELoaded generally include the osCommerce directory within them, we will look at some of the more important folders in the osCommerce distribution and take it as read that they contain the same kind of files as in the other two carts. I'll point out any differences as we go.
You will notice that many of the folders, e.g. 'ext','images','includes' (and its contents) are present in both the admin and shopfront components. This is fairly intuitive given that the two components can effectively be seen as separate applications - ideally they are not meant to share any files during execution. The folder summaries below therefore apply to both the storefront and admin (in the 'admin' folder) components.
| |
- catalog - The files in this folder differ across carts, depending mainly on the template system (if any) that they use. osCommerce doesn't use a template system, so most of the files in this folder contain both header .php files (code to be executed before the HTML starts) and also the complete HTML required to display a webpage. The CRELoaded stroefront component uses the Basic Template System (BTS), so the files here contain only the header PHP code - the corresponding HTML is contained in the 'catalog/templates' subdirectory. The admin component for CRELoaded however does not use a template system, so all admin files also contain the HTML. The Zen Cart storefront template system is contained mainly in the 'includes/templates' sub directory, so no webpage files are in this folder. The admin side uses the same template-less structure as the other carts' admin components, so admin page files contain both header PHP and HTML code.
- catalog/(admin)/ext - This folder is not critical to the core functionality of the carts. It contains components which typically use callback functions, such as payment modules. Any component which uses callbacks from the web should have that part of its functionality in this folder.
- catalog/(admin)/images - Self explanatory, this folder contains almost all of the image files for the component. You will see sub folders containing product pictures, system images etc. One noteable exception here are the various buttons in the front and back end. Since they are language-dependent, they go in the includes/languages sub directory.
- catalog/(admin)/includes - This is the real 'engine' of the component, containing the vast majority of the executable .php files and core functionality.
- catalog/(admin)/includes/boxes - This folder contains code to display each of the infoboxes which can be displayed in the left or right columns for both the storefront and admin components.
- catalog/(admin)/includes/classes - Files which contain PHP classes used by the various functional components. Classes are usually used to take advantage of PHP's object oriented functionality.
- catalog/(admin)/includes/functions - Files containing PHP functions pertaining to its functional components. It is not uncommon to find files with the same name in the catalog,classes,and functions folders if they serve the same functional component.
- catalog/(admin)/includes/graphs - Component-specific files for generating graphs.
- catalog/(admin)/includes/javascript - Javascript files for the various components should be placed here. This is not always the case - some general javascript files can be found in 'catalog' or 'catalog/includes' too.
- catalog/(admin)/includes/languages - The main folder for all language-specific information like text and graphical buttons.
- catalog/(admin)/includes/local - This (initially empty) folder can be used to place an alternative configuration.php file if you want to override the original settings in the 'includes' folder to take account of particular local environment settings.
- catalog/(admin)/includes/modules - This folder usually contains files for discreet functional modules which can be switched on or off via the admin component.
- catalog/download - If selling downloadable products, they are stored here for download as required.
- extras - In osCommerce, this folder contains a couple of blank .psd button images so that you can create your own buttons using a program like Adobe Photoshop.
| Last update : 20-07-2008 17:57
|
|
|
Users' Comments  |
|
Average user rating
(0 vote)
|
|
Add your comment
|