Personalized Web Pages
GuestTrack's personalization and tracking features are
based on displaying custom pages using the GuestTrack tags
that you embed in your HTML template files.
This turns a static Web page into an instantly personalized --
fully interactive -- Web experience that is tailored to the interests of
each of your prospects, customers or employees.
Unique ID Accounts
GuestTrack attaches each user's unique 12-digit ID to the links within your site.
This unique ID can be used by your Web visitor to bookmark a personalized page that enters their
personalized account on your Web site... or you can store a "cookie" on
their computer with their ID-encrypted account.
http://guesttrack.com/exec/gt/index.html/user=#user_id#
GT "Tags" Make Coding Quick and Easy
GuestTrack provides a number of special tags that enable you
to insert the user ID and other custom information into your HTML pages.
The format of the GuestTrack tags is a piece of text surrounded by
"pound signs" (#) (sometimes called "hash marks"). GuestTrack substitutes
the specified value in place of the "#" tags.
The 12-digit User ID is inserted wherever you add the tag '#user_id#'.
The data in the 'name' column is inserted when you add the tag '#user[name]#'.
That means you can put your user's name in headlines or text anywhere in your HTML that you want this information
to appear.
To Link GuestTrack-coded Pages
Every HREF link you use to link to a Web page runs the GuestTrack program
called 'gt' (which is typically stored in the 'exec' directory or the 'cgi-bin' of the Web
server). In order to easily create links you can use a short
GuestTrack tag that inserts the proper directory and program name. This
tag is ' #gt# '.
The following example shows the simplest form of a GuestTrack
coded HREF link. It will display a template page with any user
personalization you have added to that page.
EXAMPLE: Links that access a Template PLUS Personalization PLUS a Table
The following HREF example displays a template page with personalization AND accesses a particular record in the
desired table. In this case, the product's "SKU" in the "Product" table.
Displaying User ID Information
Guest IDs
GuestTrack attaches the user's unique 12-digit
ID to the URL for each page that is viewed. Until a visitor actually
registers by submitting answers to a form, a "guest's ID" is included in
each URL of your GuestTrack-enabled site. This "guest ID" is composed of
"ffffffffffff" (12 f's).
Following is an example of how
the Web page's URL is expanded when the page is displayed to the user
(where the "guest" ID is "ffffffffffff" and filename is
demo.html):
http://www.guesttrack.com/exec/gt/demo.html?user=ffffffffffff
Registered User IDs
The registered visitor's User ID
is frequently used to automatically retrieve previously provided contact
information in an Order Form used to make purchases from your Web
site...and to recall "profile" information that will help select content of
interest to this individual. The completion and submission of ANY form
data can used to create a User ID.
http://www.guesttrack.com/exec/gt/demo.html/user=43y5e836i94h
The unique User ID is created when a new visitor to your
Web site answers one or more simple questions that you put into a Web form.
The friendlier the tone of your query, -- and the more desirable the
follow-on information will be -- the more likely your visitor will register
and bookmark that new account on your site.
Examples of Web form questions you might consider:
- What interests do you have?
- What is your Name and Zip Code?
- What is your favorite TV program?
Web Form techniques that can be used include:
- Checkboxes
- Radio buttons
- Pop Ups
- Text boxes
GuestTrack then enters this data into the proper Table for
later recall and to use as selection criteria in displaying personalized
content for this viewer.
EXAMPLE: Query for a new visitor:
Here is the HTML code to generate this form:
One frequent response for your Web users is to provide a page links to
specific sections of your Web site based on their interests.
Here is a simple piece of code that gives you an idea of how this
works based on a user's submission of the "Interests" form
above.
#user[interest01|equals|planning]#
Links about planning:
House plans
Yard plans
#end_block#
Using Database Tables with GuestTrack
GuestTrack allows you to use a SQL commands to retrieve data from a database
as well as to store data.
GuestTrack retrieves one row of a table (or multiple
tables) at a time for use within a page. Following these two sample tables is an example
HREF tag showing how to access one record in each table.
Table showing user data
| Name |
Email |
Sex |
Zipcode |
Order# |
| Abe |
abe@aol.com |
male |
90010 |
6789 |
| Babe |
babe@mindspring.com |
female |
60550 |
6790 |
| Cabe |
cabe@wishingwell.com |
male |
66034 |
6791 |
Table showing product data
| SKU# | Name | Description | Price |
| 1001 | Cherry Tree | 4', bare
root, 1 year old | $5.50 |
| 1002 | Lilac Tree | French lilac, 3',
grafted | $12.95 |
| 1003 | Apple Tree | 2', 1 gal, 1 year
old | $24.45 |
In order to access on one Web template page columns of data from the user's profile and one
record in the product table, the following HREF would be used:
House plans description
In certain circumstances a data retrieval might
benefit from accessing multiple ROWS at a time (Example: When you want to
display a product list that includes 5 products... Just keep in mind that
each link is retrieved ONE AT A TIME -- based on the pertinent selection
criteria provided by the user.
Example: Displaying Multiple Data Fields with ONE Retrieval
www.company.com/exec/gt/prodtemplate.html?user=abc123def456&product=1003&cart=2
USER TABLE
| User# |
Name |
Email |
Sex |
Zipcode |
Order# |
| 101 |
Abe |
abe@aol.com |
male |
90010 |
6789 |
| 102 |
Babe |
babe@mindspring.com |
female |
60550 |
6790 |
| 103 |
Cabe |
cabe@wishingwell.com |
male |
66034 |
6791 |
PRODUCT TABLE
| SKU# |
Name |
Description |
Price |
| 1001 |
Cherry Tree |
4', bare root, 1 year old |
$5.50 |
| 1002 |
Lilac Tree |
French lilac, 3', grafted |
$12.95 |
| 1003 | Apple Tree |
2', 1 gal, 1 year old |
$24.45 |
SHOPPING CART TABLE
| CustomerID# |
Order# |
SKU# |
Qty |
| 102 |
6789 |
1003 |
2 |
| 102 |
6789 |
1001 |
3 |
Inserting Profile Information into a Document
Many times you will want to insert Profile Data such
as a name into your content. This is easy with GuestTrack
tags.
The basic GuestTrack database
tag retrieves a column of data from one row of the profile database. As
with all GuestTrack tags, it is enclosed with "pound" (#)
characters).
Insert the field specified by from the
user's database record
|
|
#user[column_name]#
|
# | is the opening
GuestTrack tag |
user |
is the name of the Table to search |
[column_name] |
is the column of the Table to retrieve |
#
|
is the closing GuestTrack tag |
Making Decisions Using Profile Data
Much of the power of GuestTrack's personalization capabilities are centered in the ability to expand and contract content based on values in the user table. This is accomplished by perfoming "if tests" on data values.
If Test
Inserts the text indicated by true-text if the record's
value for
the field field_name is equal to test-text.
If the strings are
not equal and false-text is specified,
false-text is inserted
instead.
#user[field_name|equals|test-text|true-text]#
#user[field_name|equals|test-text|true-text|false-te
xt]#
Checkbox
Inserts the word
"checked" if the value of the specified field name is true (greater than
0); otherwise it simply removes the tag. Useful in constructing checkboxes
for forms.
#user[field_name|checked]#
Example:
NOTE: be sure to include the
'GT-flags' variable to signify that a blank checkbox is to be turned "off".
Insert the text indicated as true-text if the value of field_name
is true. If the value of field_name is false (i.e., 0 or missing)
and false-text is specified, then false-text is displayed
instead. If the value is false and false-text is NOT
specified, the tag is simply removed.
#user[field_name|ifchecked|true-text]#
#user[field_name|ifchecked|true-text|false-text]#
Radio Button Test
Inserts the word
"checked" if the value of the specified field is equal to
value.
Useful in constructing radio buttons for forms.
#user[field_name|radio|value]#
Example:
#user[Age|radio|1]#>18-24
#user[Age|radio|2]#>25-34
Note the value ('1' or '2' in this case) matches the value after the
'radio' keyword in the GuestTrack tag. Same as above, but if there is no defined value for the
specified field name, it checks the current option as the starting
value e.g.,
#user[field_name|radio|value|default]#
Selected
Inserts the word "selected" if the value of the specified field is equal to value; otherwise it
simply removes the tag. Useful in constructing pop-up menus for
forms.
#user[field_name|popup|value]#
Example:
Same as above, but if there is no defined value for the specified field name, it selects the
current option as the starting value
#user[field_name|popup|value|default]#
Example:
Block Test
Allows a block
of text to be displayed if the test is true, and
a separate block of text if it is false. The test argument can be
a list of arguments from one of the above variants. The list of
arguments does NOT contain the text to display; that text belongs
between the block line, the
#else_block#
line, and the
#end_block#
line.
Example:
#user[interest1|block|ifchecked]#
HTML text to
display if interest1 is
checked.
#end_block#
Example:
#user[gender|block|equals|male]#
HTML text to display if the 'gender' field is 'male'.
#else_block#
HTML text to display if the 'gender' field is NOT 'male'.
#end_block#
Using SQL Commands
The database publishing power of GuestTrack comes from the ability to include SQL Select, Update, and other SQL commands within the HTML template file. As GuestTrack processes an SQL command, it passes it to the Database Management Program for action, then uses the results in preparing the Web page.
The SQL tag resembles the Block tag with its criteria section and its content section. Using a standard SQL Select comamnd on a Product table, the following example shows how to generate a table of links to product pages in an online catalog.
Example:
| Name | Description | Price |
#begin_sql[select gtKey, name, descrption, price from product where price<10]#
|
#sql[name]#
|
#sql[description]#
|
$#sql[price]#
|
Include from File
With Web sites becoming very large, and deriving content from databases, it is important to be able to make changes that automatically affect all pages within the site.
The Include feature accomplishes this by allowing you to specify a location within a template that will have the contents of a file inserted into that location. This means you can have one file of HTML tags for use at the bottom of every page. Or, you can standardize on the logo and content for the top of a page, or the left side.
In addition, content that is used on pages with slightly different formatting can be stored in an Include file, then automatically inserted in each of the different templates.
The following GuestTrack tag includes all of the text from a file into the location of the Include statement.
#include[filename]#
Images
Each image tag (IMG SRC) needs to have a fully specified path from the server's document
root. This is necessary because when GuestTrack runs, the relative
directory is within the cgi-bin directory, not the document tree.
In other words,
for the image 'logo.gif' in the 'images' directory in the document root,
would need to be: