Technical Version
Search
Page Generation
Web Server Configuration
Templates
E-mail
Sales Tax & Shipping
Java/JavaScript
Database
Search
Q. How do I exclude certain directories from being indexed?
A. In the swish.cfg file, found in the /merchant/swish directory, add the following line:
FileRules pathname contains directory_name
For example to exclude the _vti directories in FrontPage the correct
line would be: FileRules pathname contains _vti
Q. How do I exclude certain files from being indexed?
A. In the swish.cfg any of the following options could be used:
FileRules pathname contains admin
FileRules filename is index.html
FileRules filename contains # % ~ .bak .orig .old old.
FileRules title contains construction example pointers
FileRules directory contains .htaccess IndexPrefixOnly p- c-
Q. When I index my store certain words are not indexed. How can I specify which words I want indexed?
A. In the swish.cfg file, specify any of the following rules:
MinWordLength 3 #
Specifies the minimum length of words to index. Anything shorter than
# will not be indexed. Default is 3.
MaxWordLength 30 #
Specifies the maximum length of words to index. Anything longer than #
will not be indexed. Default is 30.
BeginCharDigit yes #
Allows a digit to be the first character of a word. Default is "no."
EndCharDigit yes #
Allows a digit to be the last character of a word. Default is "no."
IgnoreAllNumbers no #
Ignores words that are all digits. Default is "yes."
IgnoreAllVowels yes #
Ignores words that are all vowels. Default is "yes."
IgnoreAllConsonants yes #
Ignores words that are all consonants. Default is "yes."
MaxRepeatNumbers 4 #
Ignores words that have more than this many consecutive digits. Default
is "4." Set to -1 for no limit. Set to 0 to allow no numbers
in words. For example, with the default setting of 4 #, the word "test12345"
would be ignored.
MaxRepeatVowels 4 #
Ignores words that have more than this many consecutive vowels. Default
is "4." Set to -1 for no limit. Set to 0 to allow no vowels
in words. For example, with the default setting of 4 #, the word "testaeiou"
would be ignored.
MaxRepeatConsonants 5 #
Ignores words that have more than this many consecutive consonants. Default
is "5." Set to -1 for no limit. Set to 0 to allow no consonants
in words. For example, with the default setting of 5 #, the word "testqwrx"
would be ignored.
MaxRepeatChar 3 #
Ignores words that have a character repeated more than this many times.
Default is "3." This number represents the maximum number of
times a single character can appear consecutively in a word. If a word
was "testaaaa" it would be ignored, but "testedtxt"
would not be ignored since the "t" characters are not consecutive.
Set to -1 for no limit. Set to 0 or 1 to disallow any repeated characters
in words. If -1, the limit of MaxRepeatConsonants, MaxRepeatVowels or
MaxRepeatNumbers will apply, unless those are also -1.
Q. When I index my site common words like "a" and "the" are indexed. How do I remove common words?
A. To remove common words, add the following line to the swish.cfg file:
IgnoreLimit 50 100 #
This automatically omits words that appear too often in the files (these
words are called stopwords). Specify a whole percentage and a number,
such as "80 256". This omits words that occur in over 80 percent
of the files and appear in over 256 files. Comment out to turn off auto-stopwording.
Q. If I choose dynamic pages, how do I control which columns in my product database are indexed?
A. By default SoftCart will index the following columns:
SKU
Description
Marketing Description
If you would like to add or remove any columns to be indexed you will need to add the following line to your store config file:
DBIndexFields Column_Name1: Column_Name1: Column_Name1
Q. When I do a search in my store the graphics and links on my search results page are broken. How do I fix this?
A. On the search page/template you will need to specify full URL's for
both the image sources and the links on the page.
(e.g. <IMG SRC=http://www.domain.com/images/graphic.gif>)
Q. Can I change the number of search results that are returned?
A. Yes. In the wwwwais.cfg file, found in the cgi-local directory, please add the following line:
MaxHits 40 #
Where 40 is the maximum number of results to return.
Q. How can I change the text of the search results?
A. In the wwwwais.cfg file, add the following line:
SortType score #
This determines how results are sorted. This can be:
score
lines
bytes
title
type
Q. Do I have to use the icons on my search results?
A. No. In the wwwwais.cfg file you can modify the following line:
UseIcons yes #
Define as "yes" or "no" if you do or do not want to
use icons.
Page Generation
Q. How can I upsell my products?
A. Upsell currently is only supported for creating static pages. The upsell feature as described below will not work with dynamic product pages. The upsell feature requires some modification of our standard template sets. The steps you need to follow are below.
- Select the template set that you will use.
- Go into the template set directory.
(usually /merchant/SmPageGen/contbasic) This will take you into a specific template set. From here, make a copy of one of the product page templates. These include pages such as normalleft.html, onsaletop.html (any page with the words top, left, right, or bottom are product page templates). Name this copy upsell.html. - Go up one directory to the directory where the page generation executable and template set configuration files are located. You will need to modify the template set configuration file that corresponds to the template set that you chose.
- Open the template set configuration file and look for the following
line:
ProductPage1.
This lists all of the possible product page templates that are available. There should be about 24 listed here. Go to the end of this section and add a line similar to:
ProductPage25 Upsell Template;contbasic/upsell.html
This will make the upsell template available in the pull down list when you select the product page style for each SKU.
Now that you have done this, you need to make a change to the upsell.html page that was created. Currently it will add an item to the cart and then link to the display cart page. The syntax for this can be found on the upsell.html page as:
<form ACTION="ADDPRODUCT#scpages/showcart.html" METHOD="POST">
To be able to use the upsell feature this should read as:
<form ACTION="ADDPRODUCT#p-%%product.upsell%%.html" METHOD="POST">
Once this is done you will need to select the upsell template for a given product and enter the SKU of the product that you want to link to for the upsell item.
Q. I would like to change the number of products that are listed per page. How do I do this?
A. You will need to open the template set configuration file for the template that you are using. In this file there is a line that reads:
MaxProdPerPage x
To change this value, simply replace current value (x) with the maximum
number of products that you would like to be displayed per page.
Q. I am in the process of adding new products to my website, but I do not want to make them available yet. How do I do this?
A. In the template set configuration file, add a new ProductPage line. For this new line, specify a name of the template set, but do not include a path for the input file. An example would be:
ProductPage25 No Page:
When your store is generated, the product page for this product will not
be created.
Q. How do I access additional data from my product database in a template set?
A. Open the html page in the template set that you want to add the data to. Insert the following tag:
%%product.column_name%%
where column_name is the field in the database that you want to call.
Q. In my template set I want to add a link to an external website (e.g. http://www.mercantec.com). However, when I generate my store and follow the link I get an error. How do I fix this?
A. To use links to external websites you will need to use the SoftCart tag, NOPARSE#. A "normal" sample HTML link to an external website would be:
<A HREF="http://www.mercantec.com">Link</A>
To be able to link to this website from your store you will need to change this link to read as:
< A HREF="NOPARSE#http://www.mercantec.com">Link</A>
Q. Bookmarks in my pages are not working. I am linked back to the index.html file. How do I fix this?
A. A standard bookmark in an html page is <A HREF="#HERE">. To be able to use bookmarks within your store environment the link needs to be either:
<A HREF=#HERE> (without the quotes) or
<A HREF="page.html#HERE">
Web Server Configuration
Q. I am running Netscape Enterprise 3.6. When I try to log in I get a "File Not Found" Error message. How do I fix this?
A. This is a common issue with the 3.6 version of the webserver. You will need to upgrade to the 3.6 SP1 version of the webserver.
Q. Why does Microsoft's Internet Explorer "spin" on CGI and NSAPI output that used to work with Navigator, Communicator, and earlier versions of IE?
A. A "feature" of IE4 is that it uses HTTP/1.1 to keep the connection with the server "open." It does eventually time out, however it takes time (on the order of 30 seconds). Netscape is working on a patch for Enterprise 3.0 to handle this. In the meantime, the answer comes from Klavs Riisager on devs-server-technical:
"The way to fix the problem with MSIE4, is to set the 'HTTP Persistent Connection Timeout:' value to 0 in our NS3 server (it's under Server Preferences, Performance Tuning, Advanced Settings)."
Within an NSAPI directive, you can manually close the client socket with net_close(), although this may have unintended side effects. The patch from Netscape is sure to be a cleaner solution.
Q. When I try to switch over to my secure server (StrongHold) using IE 4.0 I receive an error. How do I fix this?
A. Please check what version of StrongHold you are using. There was a
bug with Stronghold and IE 4.0 that was fixed in build 2046 of Stronghold.
For more info see:
http://www.int.c2.net/support/sh2/version-history20.php3
Build code UKWeb/2046 [October 1997]
Fix problem with SSL CGI failure (IE4.0 and chunking).
Templates
Q. I would like to collect additional information on my online order page. How do I make this available in my templates?
A. By default SoftCart will pass all information that it collects on the online order page. If you add a new field to your online order page called Address3:
<INPUT TYPE="TEXT" NAME="Address3" Value="" Size=30>
You will need to make a change to your order delivery templates to capture this information. The tag that you will need to add is <Field_Name>. In the example that we used above the tag would be <Address3>. These tags are case sensitive so you will need to verify the spelling of the field names.
Q. How do I access additional data from my product database in my order delivery templates?
A. To access additional data from your product database you will need to add the following tag to your order delivery templates:
<Product.Column_Name>
Replace Column_Name by whatever column you need to access.
This tag needs to be places between the <Product> and tag in the existing template. For example, the following tags will access a column called Password from the product database:
<Products>
<Product.Password>
</Products>
These tags are case sensitive so you will need to verify the spelling
of the field names.
Q. How do I call the credit card authorization and transaction numbers in my templates?
A. The tags to use to be able to call these fields are:
<CCAuthNumber> Credit Card Authorization Number
<CCTransNumber> Credit Card Transaction Number
Q. What are the possible tags available to use in my templates?
A. Product Tags
| <Date> |
Prints the date in mm/dd/yyyy format |
| <time> | Prints date and time the order it was taken |
| <cartID> | Shopping Cart ID |
| <Geography> | The geography selected by the user |
| <ShopName> | The name of the shop specified in the configuration file |
| <Products> | Signals the beginning of the section that will be repeated for each item in the |
| <ProductSKU> | SKU (or item number) for the current product |
| <ProductQuantity> | Quantity purchased of the current product |
| <ProductVariation> | Variation data for the current product |
| <ProductDescription> | Description of the current product |
| <ProductPrice> | Price per unit of the current product |
| <ProductTotal> | Subtotal price before shipping and sales tax |
| <ProductShipping> | Shipping per unit of the current product (Line Item shipping model only, otherwise 0.00) |
| <Product Weight> | Weight per unit of the current product (WeightTables shipping model only, otherwise 0.00) |
| <Product#> | Position in cart for the current product |
| </Products> | Signals the end of the section that will be repeated for each item in the cart |
Total Tags
| <TotalLineItems> | The total number of product line items (not including shipping and sales tax) |
| <TotalTax> | Total sales tax for the order |
| <TotalShipping> | Total shipping amount for the order (WeightTables, PriceThreshold, and QuantityThreshold shipping models only, otherwise 0.00) |
| <GrandTotal> | Grand Total for the order, including taxes and shipping |
EDI Tags
| <EDIDate> | Prints the date in YYMMDD format |
| <EDITime> | Prints the time in HHMMSS format |
| <TotalLineItems> | The total number of product line items (not including shipping and sales tax) |
Q. I am not using a template to format my orders. When I download my orders the credit card number is not included. Why is this and how can I fix it?
A. By default you are doing a credit card check in SoftCart using the "ccnum" parameter, which does not pass the credit card number field. To include the credit card number you will need to use a template to format the order delivery.
Q. I am using a template to format my order delivery and when I download my order I receive the message "Credit Card Was Approved" where the credit card number should be. How do I do this
A. If you are using a credit card authorization program (e.g. CyberCash) then SoftCart will not pass the credit card number to any back end application. You will need to add the settlement program to receive your credit card information (if necessary).
Q. When I try to place an order offline I receive a message saying that the mail server refused the message. What do I do?
A. Some ISP's limit access to their mail servers. Please contact your ISP to see if they have set up any filtering rules on the mail server that you are trying to use.
Sales Tax & Shipping
Q. I use both FedEx next day and Standard Mail to deliver my products to my state. How do I set up my shipping zones to accommodate this?
A. A shipping zone is a very general term. You can use whatever you want for each zone. To set up your store use the example above you could create two zones, one called "Illinois - FedEx next day" and a second zone called "Illinois - standard mail". You will then be able to enter in the shipping charges for both of these zones to meet your shipping requirements.
Q. I have my shipping charges set up, and when I add an item to my cart the shipping charge is displayed. However, after I add more to my cart I loose my shipping charges. Why?
A. For each shipping zone you will need to enter a maximum value. The shipping amount that you will need to enter is the word "max" and the shipping charge for this amount will be whatever you want to charge for shipping. An example would be:
10 1
Max 2
This will charge $1 shipping between 0 and 10 and $2 for anything over 10. This applies to the following shipping models:
Price Threshold
Weight Threshold
Quantity Threshold
Java / JavaScript
Q. I have published my sites to various search engines and people are going directly to my product pages without first entering the front door. When they try to buy an item they receive a file not found error message. What can I do to resolve this?
A. Attached is a brief JavaScript that will check to see if the shopper has been assigned a session ID and if not, automatically reload the page so that the shopper can buy the product with a cart ID. This script works in Netscape browsers 3.0 and above and IE browsers 3.0 and above as well. Please place this script in between the <head> tags in your documents.
<SCRIPT LANGUAGE="JavaScript"> <!-- if (location.pathname != "/cgi-bin/SoftCart.exe/store2/product2a.html") window.location="/cgi-bin/SoftCart.exe/store2/product2a.html?E+mystore2"; while (location.pathname != "cgi-bin/Softcart.exe/store2/products2a.html") break // --> </SCRIPT>
You will need to modify each of these lines to reflect the following on your site:
the CGIBinDirectory:
the example is cgi-bin
the name of the executable:
the example is SoftCart.exe
the path and name of the page that you are using this script on
(this will change from page to page):
the example is for product2a.html in the store 2 directory store2/product2a.html
the configuration file that you want to invoke
the example is mystore2
This will check to see if SoftCart is in the URL (i.e. that the shopper has a session ID). If not it will automatically reload the page but invoke SoftCart and assign them a new session ID (in effect every page will have a front door link built into it).
If the shopper does have a session ID then nothing happens and the shopper continues shopping. The page does not reload and everything is fine.
Q. My Java applets will not work inside of SoftCart. When I go to my site without using SoftCart the Java works fine but when you are on the system with SoftCart I get the following errors. Why?
When using Netscape Navigator:
"applet can't start erro.java.lang.class.error"
When using Internet Explorer
"load:class tickertape not found"
A. It is possible to run applets within a storefront, however, it is necessary to use the "CODEBASE" parameter as part of the Applet tag.
Following is a sample applet code:
<applet code="NervousText.class" codebase="/uwest" width=200 height=50> <param name=text value="Your Logo Here"> </applet>
A brief summary of the Applet tag:
<applet> specifies a Java applet. Everything until the </applet> tag is part of this. If you wish to have some text displayed by browsers that do not support Java, or have Java "turned off" specify it between the <applet> and </applet> not enclosed by <>.
code= specifies the file which contains the Java "bytecodes." You can think of this files as the complied Java program (but it's the same on all platforms that support Java).
You can't specify a URL here; you just specify the name of the file (usually SomeClassName.class).
codebase= Here you can specify a URL to a directory that contains the class file specified in the "code" parameter. THIS IS REQUIRED FOR CORRECT OPERATION WITHIN A SOFTCART STOREFRONT. Since the "current directory" is lost because SoftCart parses every page, it causes the "can't start" errors described above.
You can specify it as mentioned above - with an initial '/' - as in:
codebase="/store1"
codebase="/store2/applets", etc.
codebase = "<http://www.mystore1.com/store1>"
codebase = "http://www.mystore2.com.store2/applets"
The width and height parameters simply tell the browser how much of the page to reserve for the applet.
The rest is the parameters to the Applet. These should not cause any problems, unless they specify URL's. If they do, they should be absolute, not relative. There is not away currently to get SoftCart to parse these.
Q. I am using a .js file to include the JavaScript navigation on a page instead of actually placing the source on the page. However, this does not work in SoftCart. Does SoftCart allow me to do this as described above?
A. Unfortunately you can not point to a JavaScript file. You will need to place the source of the JavaScript on the page itself. You will only need to do this for JavaScript files that deal with navigation/links.
Database
Q. What is the database capacity of SoftCart?
A. Using the ASCII tab delimited data file that comes with SoftCart, stores can support up to about 7,500 products in a database. For more than 7,500 products we recommend using a relational database. On Windows NT SoftCart provides an ODBC interface allowing connections to any ODBC compliant database such as Oracle, Sybase, or Informix. In addition for the UNIX environment, we would suggest using the Mercantec Product API to develop a direct connection between SoftCart and the existing relational database. This has been done for Oracle, MySQL, and Sybase by third parties.
Q. I have a site with over 5,000 products and I do not want to use the user interface to enter in my products. Is there a way that I can simply upload my database to my website?
A. Yes. By default SoftCart reads from a tab delimited text file. Save your current database as a tab delimited text file. This is easily accomplished through most third party spreadsheet/database applications by doing a "Save As" and then specifying a tab delimited format. When you save this file, save it as product4.pdb. You can choose any name you want, but there will be additional configuring if you save the file under a different name. Once you have saved the file you will need to upload it to your server. You can do this through many applications like an FTP program or through your html editor if it supports a Publish/Upload option. You will need to upload this file to the data/shopdata/products directory on your server. The location of this directory will depend upon where the software was installed at installation time. Once you have located this directory you will then need to upload the file "product4.pdb" to this directory. If you are given an option of either uploading the file as "ASCII" or "binary," select "ASCII" as the file format.
Please note: the information on this page applies to ITS web hosting plans. It may or may not apply to other environments. If you are looking for a feature described here, or better support from your hosting provider, please consider hosting your site with ITS!
Copyright © 1996-2008, Integrated Technical Solutions, Inc., all rights reserved. See Terms/Legal for trademarks, copyright, and terms of use.
Naperville, IL 60563
fax 630.420.2771
