Jump to content
  • Checkout
  • Login
  • Get in touch


The e-commerce.


  • Content count

  • Joined

  • Last visited

  • Days Won


RMD27 last won the day on April 4 2020

RMD27 had the most liked content!


Profile Information

  • Real Name
  • Gender
  • Interests
    Top OSC Contributions

    1.Easy Populate - OSC is useless without it


    2.SEO URLS - Awesome


    3.KissMT - Has some weaknesses, you cant specify your own tags for example but it is super easy to install
    or 3.Header Tags - Big deal to install, can customise the tags.


    4. Ask a product question


    5. Order Editor


    6. CSS Product Listing http://forums.oscommerce.com/topic/352919-convert-product-listings-to-table-less-css/

    1) add the following code (new class definition) to includes/classes/boxes.php before the final ?>

    ///// BOF CSSTABLEBOX //////
    class csstableBox {

    // class constructor
    function csstableBox($contents, $direct_output = false) {

    for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
    if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $csstableBox_string .= $contents[$i]['form'] . "\n";
    $csstableBox_string .= ' <div class="cssproduct_listing_item" >' . "\n";

    if (isset($contents[$i][0]) && is_array($contents[$i][0])) {
    for ($x=0, $n2=sizeof($contents[$i]); $x<$n2; $x++) {
    if (isset($contents[$i][$x]['text']) && tep_not_null($contents[$i][$x]['text'])) {
    $csstableBox_string .= ' <div class="cssproduct_listing_content">';
    if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $csstableBox_string .= $contents[$i][$x]['form'];
    $csstableBox_string .= $contents[$i][$x]['text'];
    if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $csstableBox_string .= '</form>';
    $csstableBox_string .= '</div>' . "\n";
    } else {
    $csstableBox_string .= ' <div class="cssproduct_listing_content">' . $contents[$i]['text'] . '</div>' . "\n";

    $csstableBox_string .= ' </div>' . "\n";
    if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $csstableBox_string .= '</form>' . "\n";

    $csstableBox_string .= '<div class="cssclear"></div>' . "\n";

    if ($direct_output == true) echo $csstableBox_string;
    return $csstableBox_string;

    class cssproductListingBox extends csstableBox {
    function cssproductListingBox($contents) {
    $this->csstableBox($contents, true);

    ////// EOF CSSTABLEBOX //////

    2) add the following to includes/stylesheet.css

    border: 1px dotted #bbc3d3;
    border-width: 0px 0px 0px 0px;
    width: 140px;
    padding: 2px 0px 2px 0px;
    margin: 0px 0px 0px 0px;

    float: left;
    width: 155px;
    height: 165px;
    border: 1px solid #bbc3d3;
    border-width: 1px 1px 1px 1px;
    font-family: Verdana, Arial, sans-serif;
    font-size: 10px;
    text-align: center;
    padding: 5px 0px 5px 5px;
    margin: 5px 5px 5px 5px;

    .cssclear{clear: both;}

    3) In includes/modules/product_listing.php:
    about line 68 comment out the following.
    ie change:

    $list_box_contents[0][] = array('align' => $lc_align,
    'params' => 'class="productListing-heading"',
    'text' => ' ' . $lc_text . ' ');

    // $list_box_contents[0][] = array('align' => $lc_align,
    // 'params' => 'class="productListing-heading"',
    // 'text' => ' ' . $lc_text . ' ');

    and change:

    new productListingBox($list_box_contents);

    // new productListingBox($list_box_contents);
    new cssproductListingBox($list_box_contents);

    That's it.


    7. To speed up the site search

    I finally figured out what was bogging down my database when searching for products. I had to post this. I have about 220,000 active products in my store seekshopping.com... parse time is at the bottom if anyone wants to checkout the performance.

    I have optimized so many queries and continue to monitor and do so. Whe I started, my search queries were about 20-40 seconds... that's a life time on the net. Including all the variables in the search url with help decrease query speed by about 50%...


    Now I'm down to about 11 or 12 seconds for a search which is still not good enough. 6 seconds should be the maximum. Just remove products_model from the search string. Here is the code to change in advanced_search_result.php...

    Comment this out:
    //$where_str .= "(pd.products_name like '%" . tep_db_input($keyword) . "%' or p.products_model like '%" . tep_db_input($keyword) . "%'";

    Simply change to this:
    $where_str .= "(pd.products_name like '%" . tep_db_input($keyword) . "%'";

    I hope this helps someone out. My queries are running under half a second and my search page parses in about 2 seconds. That's a 1500% imporvement.

    check it out at http://www.seekshopping.com/catalog/



    8. To ramp up site speed

    2- Run this query in your db

    ALTER TABLE `products_to_categories` DROP PRIMARY KEY;
    ALTER TABLE `products_to_categories` ADD INDEX `idx_p2c_categories_id` ( `categories_id` );
    ALTER TABLE `products_to_categories` ADD INDEX `idx_p2c_products_id` ( `products_id` );





    Open graph protocol

    <meta property="og:title" content="<?php echo $product_info['products_name']; ?>" />
    <meta property="og:type" content="product" />
    <meta property="og:url" content="<?php echo 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ;?>" >
    <meta property="og:image" content="<?php print 'http://' . $_SERVER['SERVER_NAME'] . DIR_WS_HTTP_CATALOG . DIR_WS_IMAGES . $product_info['products_image']; ?>" />
    <meta property="og:site_name" content="<?php echo STORE_NAME;?>" />
    <meta property="fb:admins" content="YOUR_ADMIN_KEY_GOES_HERE" />
    <meta property="og:description" content="<?php echo preg_replace('/[^a-zA-Z0-9\s]/','',preg_replace('/\s+/',' ',preg_replace("/
    /", "",strip_tags($product_info['products_description'])))); ?>" />


    Recommended Hosting Company

    HostDog.gr - These guys are awesome


    Upgraded to PHP 5.6. Shipping info stopped being carried to checkout confirmation. At least on first try and orders were not being received. This fixed the problem http://forums.oscommerce.com/topic/309372-shipping-option-is-missing-on-checkout-confirmationphp/#entry1284257


    PHP upgrade step to 5.6

    Stupid osCommerce is still living in the dark ages, using things like register_globals and $HTTP_POST_VARS – come on guys – get with the program! Following my theme of being forced to fix every program I try to use, I have patched osCommerce 2.2 Milestone 2 Update 060817 to work with PHP 5. Luckily this is an easy fix. First download it from the link above and install the Register Globals Patch (look for VV 1.5 – ZIP Archive).
    Now that we have that issue solved we just need to fix the $HTTP_*_VARS issue – these are old school PHP3 variables that were included in PHP4 for compatibility.
    Copy this and put it in a file called php5fix.php in your catalog/includes directory:
    // PHP5 Fix by Steve Kamerman, http://www.teratechnologies.net/stevekamerman

    $phpversion = explode('.', phpversion());
    if((int) $phpversion[0] >= 5){
    // PHP 5 has no idea what this crap is
    $HTTP_GET_VARS = &$_GET;
    $HTTP_ENV_VARS = &$_ENV;
    Now edit catalog/admin/includes/application_top.php and add this just below the comments at the top:
    // PHP5 fix
    Edit catalog/includes/application_top.php and add this just below the comments at the top:
    // PHP5 fix
    If you haven’t completed the installation yet, do this too:
    Edit catalog/install/application.php and add this just below the comments at the top:
    // PHP5 fix
    Now you should be good to go! I’ll take a bow and pat myself on the back now – have a nice day 😀
    P.S. I suppose I could fix up a fresh installation and provide you with a link to download it from if you want. Somebody please email me if you want it, otherwise I’m wasting my time.

    is fixed in version 2.3.3 of oscommerce
    application_top.php find:
    // set the language
    if (!tep_session_is_registered(‘language’) || isset($HTTP_GET_VARS[‘language’])) {
    replace with:
    // set the language
    if (!tep_session_is_registered(‘language’) || isset($HTTP_GET_VARS[‘language’]) || empty($language)) {

Recent Profile Visitors

18,644 profile views
  1. Hi, I only use underscore "_" in the product_model field not "-"
  2. About the tax. I cant think of a reason why you would want the prices with VAT. If the government changes the VAT rate you are going to redo all the prices? If prices are without tax you just need to change the sales tax number in the admin. About the characters. Libre Office deals with different encoding in CSV, MS EXCEL does not (in my experience). Basically edit the CSV file with Libre Office. If you want to do some advanced stuff with the spreadsheet, open CSV file in Libre and save as xls. Then open it in Excel. When you have finished, open the xls in Libre and save as CSV and then re-import.
  3. RMD27

    ULTIMATE Seo Urls 5 - by FWR Media

    Hi Burt. You must have different search settings to me. Amazon, i tunes, Wikipedia even Google play to name just 4 all show SEO URLS in Google search results Image attached. Also worth noting that Google displays the results exactly as this post describes which suggests it this post is at the least, not out of date https://www.searchenginejournal.com/seo-friendly-url-structure-2/202790/
  4. RMD27

    ULTIMATE Seo Urls 5 - by FWR Media

    mcmannehan he is absolutely correct about SEO URLs. i think most people find them helpful and so do search engines to some extent https://moz.com/learn/seo/url https://www.searchenginejournal.com/seo-friendly-url-structure-2/202790/
  5. RMD27

    ULTIMATE Seo Urls 5 - by FWR Media

    maybe this will help
  6. RMD27

    ULTIMATE Seo Urls 5 - by FWR Media

    what is on line 111?
  7. RMD27

    ULTIMATE Seo Urls 5 - by FWR Media

    Character encoding, maybe you need to use the old method
  8. Unfortunately, I do not see any obvious issues with your config......
  9. To me, thats sounds like a server configuration error. I had the same problem in the past. Like I said earlier, what solved it for me (for me) was putting the "M" and the end of the relevant fields in "PHP INI Editor"
  10. Same here. I think there is some basic info needed, ie title, manufacturer, model number, category. He says he downloads a complete product though and re uploads it with just the model_number changed and no joy. Unusual. Jeff - Do you get the "New Product!" showing at the end of the product line after you do the upload? EP should give you a line by line summary of what you just uploaded
  11. An extreme long shot. In your server settings. "PHP INI Editor" "upload_max_filesize" Check the number has an "M" at the end eg 128M
  12. To confirm. You download a complete product ie with all columns. You change the model number only. Upload the product back to OSC with all columns and a duplicate product is not created?
  13. Title, description etc of product changes. If you change the category, a new category is created and the product is added to the new category and it also stays in the old category
  14. Hi. I think you would have to speak to your hosting company. I have a VPS. In WHM, the setting is in "PHP INI Editor" "upload_max_filesize" You could ask them to check the number has an "M" at the end eg 128M It probably does but I had a problem similar to yours and it was because I had 128. only Worth a shot