E-commerce web site setup can be quite a complex process.  It is quite easy to lose track of the fine details and fail to address them.  This was brought to my attention recently by a spate of Link Submission approval requests and a couple of contacts asking why I had failed to approve them.  The reason was simple – they had violated several of the basic rules of link exchange courtesy.

In most cases the back link to this site was simply not present.  In other cases, the back link was present, but the site linking back was not the same as the site for which a link was requested.   In most cases the site content was in no way relevant to the purposes of  or content on this website.   Many of these issues are common when link campaigns are being conducted by unscrupulous “SEO service” firms.  But, they can be equally common among inexperienced site operators new to  link exchanges or bona fide service providers who are just in too big a hurry to get links requests out.   While you can’t do much about the former, the latter offers some opportunity to do two things.  Acquire some relevant back links for your site, and avoiding wasting time on irrelevant garbage links.  Doing so requires that you go beyond simply adjusting the available configuration values in your Link Manager system and provide some informative language on the link system pages.  Let’s look at how that is done.

Like any other system in osCommerce, language files are stored in files which share the name of the systems root file, but are located in the includes/languages/ directory tree.  Huh?

Each osCommerce system has one or more pages associated with it.  Each page is generated by loading a file in your browser. That file is located in the folder which hold the top level of the shopping cart file set.  That folder is the shopping carts web root.  Thus, we refer to that file as a “root file”.

The root file loads a number of related files.  One of these is a “language file”.  Language files are PHP files which contain definitions for “constants”  or “defines”.    They are stored in folders located in a directory defined in the carts configuration file – usually “includes/languages/” relative to the cart root.  Those folders are named after the language used to create the definitions.  So, for the English language file of a cart located in we would look in /home/yourstore/public_html/includes/languages/english for a file with the same name as the file which generates the page we want to modify.

So, to modify the links submission page we will open the links_submit.php file found in this location into our editor.   We are going to do two things.  First, modify the text on the link submission page to give a bit of guidance about what types of links we will accept.  Next, modify the text of the email sent to the submitter to reinforce the stores policy on links.

The definition used for the pages main body text is ‘TEXT_MAIN’.  By default it contains the phrase “Please fill out the following form to submit your website.” and looks like this:  define(‘TEXT_MAIN’,’Please fill out the following form to submit your website.’);

How this is structured is important.  PHP needs to be able to tell what content is static, and which is to be “parsed” for further modifications.  It does this using the quotation marks.  So, including quotation marks requires a process called “escaping” which is best left to a PHP developer with good eyes and a knowledge of how this is done.  See the PHP website for details on constants and strings. For simplicities sake, we are going to do our modification while avoiding the use of quotation marks of any type – in order to avoid creating syntax errors.   So, we change it to the following:

define(‘TEXT_MAIN’, ‘Please fill out the following form to submit your website.
<br>Please note that we accept only RELEVANT links.  This means your site must
be related to building or operating an ecommerce, online shopping or web store
site – or providing education or services to those who are engaged in such
tasks.’);

This adds a bit of specific information about the types of links we want to collect and the sites from which we would prefer to be linked.

Next, we modify the email sent to the submitter.  This is found in the EMAIL_TEXT definition – which starts out looking like this:

define(‘EMAIL_TEXT’, ‘Your link has been successfully submitted at ‘ . STORE_NAME . ‘.
It will be added to our listing as soon as we approve it. You will
receive an email about the status of your submittal. If you have not
received it within the next 48 hours, please contact us before submitting
your link again.’ . “\n\n”);


We change ours to look like this:

define(‘EMAIL_TEXT’, ‘Your link has been successfully submitted at ‘ . STORE_NAME . ‘.
It will be added to our listing as soon as we approve it. You will
receive an email about the status of your submittal. If you have not
received it within the next 48 hours, please contact us before submitting
your link again.<br>Please be aware that we will not accept:
<ul>
<li>Irrelevant links of any type.</li>
<li>Relevantly placed links on or to link farms.</li>
<li>Bait and switch links of any type.</li>
</ul>
‘ . “\n\n”);

This reminds the submitter of our ground rules, and adds a few more details about what we will or won’t accept.

Finally, we modify the  TEXT_LINKS_HELP  definition which holds the help text and looks like this:

define(‘TEXT_LINKS_HELP’, ‘<b>Site Title:</b> A descriptive title for your website.<br><br><b>URL:</b> The absolute web address of your website, including the \’http://\’.<br><br><b>Category:</b> Most appropriate category under which your website falls.<br><br><b>Description:</b> A brief description of your website.<br><br><b>Image URL:</b> The absolute URL of the image you wish to submit, including the \’http://\’. This image will be displayed along with your website link.<br>Eg: http://your-domain.com/path/to/your/image.gif <br><br><b>Full Name:</b> Your full name.<br><br><b>Email:</b> Your email address. Please enter a valid email, as you will be notified via email.<br><br><b>Reciprocal Page:</b> The absolute URL of your links page, where a link to our website will be listed/displayed.<br>Eg: http://your-domain.com/path/to/your/links_page.php<br>This page must be located on your website and that page must be accessible from your front page.<br>’);

We modify it so it looks like this:

define(‘TEXT_LINKS_HELP’, ‘<b>Site Title:</b> A descriptive title for your website.<br><br><b>URL:</b> The absolute web address of your website, including the \’http://\’.<br><br><b>Category:</b> Most appropriate category under which your website falls.<br><br><b>Description:</b> A brief description of your website.<br><br><b>Image URL:</b> The absolute URL of the image you wish to submit, including the \’http://\’. This image will be displayed along with your website link.<br>Eg: http://your-domain.com/path/to/your/image.gif <br><br><b>Full Name:</b> Your full name.<br><br><b>Email:</b> Your email address. Please enter a valid email, as you will be notified via email.<br><br><b>Reciprocal Page:</b> The absolute URL of your links page, where a link to our website will be listed/displayed.<br>Eg: http://your-domain.com/path/to/your/links_page.php<br>This page must be located on your website and that page must be accessible from your front page.<br><br><b>Link Relevance:</b> Your link must be relevant to ecommerce or ecommerce education to be accepted.’);

Now that we have these modifications in place, we can expect some improvement in the percentage of submitted links which are mutually beneficial to us and the submitting web sites.   Note that this technique can also be applied to important pages such as the checkout process and account creation pages in order to  improve their usability.   Making similar changes in the other language file sets will help keep your cart well prepared to deal business in a multi-lingual environment.

Be Sociable, Share!