Almost daily, I see this question asked in the osCommerce Forum…
How can I have 9 random products showing in the the “New Products For…” box in the front page of my osCommerce site?
The answer is really, really simple – you need to change the SQL that selects the 9 products, like this;
Open up /includes/modules/new_products.php
Find:
[php]p.products_date_added desc[/php]
Change to:
[php]RAND()[/php]
Upload the file and refresh your index page. You’ll get 9 random products rather than the last 9 added/amended products. A better option in my opinion would be to add a “Featured Products” contribution, as I think that no customer wants to see Random Products.
I tried the script, but I still see the same old products that stay until I load something different. It made no difference. Not sure if I did something wrong.
I used Front Page.
Inaddition, my site is slower than molasses and I have been making lots of modifications and could use some help and or advise to improve the speed.
Thanks
Ron
Ron – never ever use a wusiwyg editor with oscommerce files. Try ultrapad or textpad or any other text editor…
Make sure that your site uses that particular module to show the new_products, and make sure that no other contribution is contaminating it (eg featured products).
For speeding up, it’s a case of applying some code changes, making sure images are small, using 2 sizes of image if necessary, eliminatin html as much as possible. I wrote a short tutorial on it.
How can change the: “New Products for June” on the front page?
includes/languages/english/index.php to change that text
Hello,
I tried to do it, but I can’t find “p.products_date_added desc”.
I do find “p.products_date_added desc limit” few times in that page.
And my frontpage shows 12 items.
I have osc 2.3.1.
Maybe that’s why?
It’s ok, it works fine.
Thanks.
There actually 12 items in the frontpage.
Is it possible to se more items on that page?
thank you.
This is a setting in your admin area. That is assuming the template has been correctly coded, which a lot of template are not!
I found it.
Thanks.
Hello,
regarding that, is it possible that products of only one category that I will choose will appear on the front page.
thank you.
Gary, the mysql-based rand() command is rather slow (for large databases), is it not?
I encountered this on a site I was working on for a friend: http://wanderr.com/jay/order-by-slow/2008/01/30/ – I used the join command, instead.
Hi Angela – yes, it can cause issues for larger databases. Instead of a simple ‘rand()’ you could try ‘and rand()>0.9 order by rand()’
A simple rand(), if that is not quick enough, then you would need to optimise all parts of your osCommerce shop anyway.
Change the SQL code in the new_products module, to look for products from X category rather than new_products_category_id
Hi
Is there a way of having a random list of products but they are only randomised every, say, week? So they’re not mixed up every refresh but every week.
Thanks
M.
Martin, that would certainly be possible, what you would need is some type of script that sets a timer, and a “cache” facility based on the timer script. That would not be a lot of work, if interested, email me. oscshops AT gmail DOT com