If you take a product offline, out of stock or change your search engine friendly (SEF) Urls in OsCommerce, you will see the dull 'Product Not Found' message. Here's an alternative!
This solution is based on an MS2.2+ OsCommerce build, takes into account the use of the Ultimate SEO Urls and can be considered a work in progress - currently I have not set it up for plain urls. Please get in touch or comment if you wish!
It takes a plain 'product not found' page and using MySQL FULLTEXT indexes gets the most relevant result and display it standalone with the next six most relevant displayed in an info box below.
An example of the module in action can be seen here :- http://www.wellywarehouse.co.uk/joules-junior-joules-welly-slug-sorrell-p-2530.html
The following steps are required :-
|Step 1. Open product_info.php|
|new infoBox(array(array('text' => TEXT_PRODUCT_NOT_FOUND)));|
|require(DIR_WS_MODULES . FILENAME_PRODUCT_NOT_FOUND);|
|Step 2. Open includes/filenames.php|
|Step 3. Place includes/modules/product_not_found.php into includes/modules/product_not_found.php|
|Step 4. Place includes/languages/english/product_not_found.php into includes/languages/english/product_not_found.php|
|Step 5. run the following MySQL commands on the database :-|
ALTER TABLE products_description ENGINE = MYISAM;
ALTER TABLE `products_description` add fulltext `products_name_fulltext` (`products_name`, `products_description`);