Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Can I pick which products to display in New Products for February?


TheLastWord

Recommended Posts

If you want,

Here is a nice little script, it randamizes all your new products (index page) so everytime you refresh, another product will come up in the area.. instead of just the last products you have loaded.

It just picks a random product and puts in on there

 

INSTALLATION

 

First BackUp your files !!!

 

 

Then copy the script i will put down the bottom of this install. Make a php file

name it rnd_products.php

and put into

/includes/modules/

 

then when u do that open

/includes/filenames.php

add a new line

 

define('FILENAME_RND_PRODUCTS', 'rnd_products.php');

 

 

now put something like this in your index.php ( no place required )

 

<tr>

<td>

<?php include(DIR_WS_MODULES . FILENAME_RND_PRODUCTS); ?>

</td>

</tr>

 

 

ok here is the script

 

***********************

<?php

/*

$Id: rnd_products.php,v 3.00 hpdl Exp $

 

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright © 2003 osCommerce

 

Released under the GNU General Public License

*/

 

/*

TODO:

SELECT RANDOM PRODUCTS EFICENTLY ANY PRODUCT CAN BY PUT IN THE INDEX

*/

?>

<!-- rnd_products //-->

 

<?php

//SET THE QUERYS

$sql_query[0] = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_ordered asc limit " . MAX_DISPLAY_NEW_PRODUCTS);

$sql_query[1] = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_last_modified desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

$sql_query[2] = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_quantity desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

$sql_query[3] = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_date_available desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

$sql_query[4] = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added asc limit " . MAX_DISPLAY_NEW_PRODUCTS);

// get a random number

$randomize = rand(0, 4);

$rndChooser = $sql_query[$randomize];

?>

 

 

<?php

 

$info_box_contents = array();

if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') )

{

$new_products_query = $rndChooser;

}

else

{

$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);

}

 

$row = 0;

$col = 0;

$info_box_contents = array();

 

while ($new_products = tep_db_fetch_array($new_products_query))

{

$new_products['products_name'] = tep_get_products_name($new_products['products_id']);

$info_box_contents[$row][$col] = array('align' => 'center',

'params' => 'class="smallText" width="33%" valign="top"',

'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])) .'<br>'. '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $new_products['products_id']) . '">' . tep_image_button('button_buy_rnd.gif', IMAGE_BUTTON_BUY_NOW) . '</a> ');

 

$col ++;

if ($col > 2)

{

$col = 0;

$row ++;

}

}

 

new contentBox($info_box_contents);

?>

<!-- rnd_products_eof //-->

Link to comment
Share on other sites

The code picks the products by checking the date added field. You could try going into the database and changing that field for the selected products but that is a lot of work considering they will only last for a month. Try installing one of Featured Products contributions. hat will do what you want.

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

All of My Addons

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

The code picks the products by checking the date added field. You could try going into the database and changing that field for the selected products but that is a lot of work considering they will only last for a month. Try installing one of Featured Products contributions. hat will do what you want.

 

Jack

Is the installing process just unloading the php files and activating them via admin tools.

Link to comment
Share on other sites

You will need to edit some files to install them. The instructions are in the contributions. To find them, go to the contributions section and search for Featured Products and Featured Sets.

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

All of My Addons

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...