Página 1 de 1

Random Products [Resolvido]

Enviado: 15 Set 2010, 13:57
por lippert
Galera baixei a extensão Random Products do site da opencart, ai foi só substituir o products.php. Mas aqui não funciona. Podem me dar uma dica?

Re: Random Products

Enviado: 16 Set 2010, 11:25
por lippert
Bom galera meu grande amigo nyux me passou esse link para deixas os produtos randomicos na loja:

http://forum.opencart.com/viewtopic.php ... 84&p=72444

Eu uso a versão 1.4.9 depois de ver o código nesse link percebi que não precisa muita coisa. O que eu fiz foi rápido e simples sem ter que alterar toda a function:

primeiro ache esse arquivo: catalog/model/catalog/product.php vá até a linha 343 (ou procure pela function getLatestProducts).
Depois altere a primeira linha que está assim:
Código: Selecionar todos
$product_data = $this->cache->get('product.latest.' . $this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id') . '.' . $limit);
---> para:
Código: Selecionar todos
$product_data = $this->cache->get($this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id') . '.' . $limit);
---> Perceba que eu apenas tirei o ('product.latest.' .) da variável.

ai vá até a query que está assim:
Código: Selecionar todos
$query = $this->db->query("SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id) WHERE p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY p.date_added DESC LIMIT " . (int)$limit);
---> e mude para:
Código: Selecionar todos
$query = $this->db->query("SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id) WHERE p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY RAND() LIMIT " . (int)$limit); 
---> A única coisa que mudei no sql foi ali no final: ORDER BY RAND() LIMIT.

Agora seus produtos vão ficar randômicos.

Espero ter ajudado.

Obrigado pela ajuda Nyux.
:mrgreen: :mrgreen: :mrgreen:

Re: Random Products

Enviado: 16 Set 2010, 11:29
por Nyux
Show Lippert!

Boa dica para quem precisar! :D

Re: Random Products

Enviado: 16 Set 2010, 19:31
por Manoel Vidal
Parabéns pela iniciativa Lippert e obrigado pelas contribuições Nyu. :mrgreen:

Re: Random Products [Resolvido]

Enviado: 01 Out 2010, 12:59
por vidacalcados
Galera eu não sei o que deu errado mais eu fiz do jeitinho que nosso amigo falou mais não funcionou, dae fui ate o site do OC e baixei uma modificação que funcionou na hora, não que o esforçlo de nosso amigo tenha cido em vão mais é como eu disse, comigo so funcionou esse http://www.opencart.com/index.php?route ... ad_id=2266

Re: Random Products [Resolvido]

Enviado: 01 Out 2010, 22:18
por thiiix7
Boa Noite,

Comigo funcionou os 2.

Uso um template diferente, com o tutorial do lippert a área de "Novos produtos" que ficou randon.

Com o download do vidacalçados o que randomizo foi a área "Destaques".

Perfeito!!

Re: Random Products [Resolvido]

Enviado: 08 Out 2010, 14:52
por marciokp
Show de bola, deu certinho comigo ..

Re: Random Products [Resolvido]

Enviado: 09 Fev 2012, 08:49
por adrianog
Comigo nao funcionou? sera que preciso mudar algo mais pois utilizo a verção 1.5.1.3 do OC

Re: Random Products [Resolvido]

Enviado: 07 Dez 2012, 11:24
por Pr3W
adrianog escreveu:Comigo nao funcionou? sera que preciso mudar algo mais pois utilizo a verção 1.5.1.3 do OC
Amigo tente esse link:
http://forum.opencart.com/viewtopic.php?t=32570

Abraços