Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

#34485
Olá a todos!

Foi uma necessidade minha a alteração no código para que os produtos sem estoque fossem para o final.

Vou compartilhar o que foi feito.

Para isso, abra o arquivo catalog/model/catalog/product.php e faça:

Na função getProducts, comente-a (linha 74), ficando assim:
Código: Selecionar todos
//$product_data = $this->cache->get('product.' . (int)$this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id') . '.' . (int)$customer_group_id . '.' . $cache);
Em seguida, em baixo de:
Código: Selecionar todos
if (isset($data['sort']) && in_array($data['sort'], $sort_data)) {
				if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') {
					$sql .= " ORDER BY LCASE(" . $data['sort'] . ")";
				} else {
					$sql .= " ORDER BY " . $data['sort'];
				}
			} else {
				$sql .= " ORDER BY p.sort_order";	
			}
adicione a linha:
Código: Selecionar todos
$sql .= ", p.quantity DESC";
Pronto!
#40254
Você deve ativar o relatório de erros do PHP ou então acessar o log do seu servidor para ver qual erra está causando o problema. Por padrão os erros de PHP ficam escondidos para evitar problemas de segurança. Ativando-os você poderá descobrir qual arquivo e linha está causando o problema, pois ele pode não ter relação com a modificação que você fez.
#40255
denisgomes escreveu:Você deve ativar o relatório de erros do PHP ou então acessar o log do seu servidor para ver qual erra está causando o problema. Por padrão os erros de PHP ficam escondidos para evitar problemas de segurança. Ativando-os você poderá descobrir qual arquivo e linha está causando o problema, pois ele pode não ter relação com a modificação que você fez.
Onde eu ativo o relatório de erros?
#40258
denisgomes escreveu:Abra o index.php, e na primeira linha após o <?php acrescente
Código: Selecionar todos
ini_set('display_errors', 1);
ini_set('log_errors', 1);
error_reporting(E_ALL);
Depois de achar o problema remova isto.
Coloquei e não aparece nada, continua a página em branco. O problema está só na página inicial mesmo, se eu acessar outras páginas, por exemplo: http://suplementacaoideal.com.br/pre-tr ... oncentrado
entra normal.

O mais esquisito é que mexi em um arquivo q não tem nada a ver com o index
#40264
Sem o log de erros é quase impossível descobrir qual é o problema. Acesse o admin do OC, clique em SISTEMA, CONFIGURAÇÕES, na sua loja clique em EDITAR, vá na aba SERVIDOR e então ative a opção EXIBIR ERROS e LOG DE ERROS (não sei se são esses os nomes corretos na tradução PT do OC).
#40265
denisgomes escreveu:Sem o log de erros é quase impossível descobrir qual é o problema. Acesse o admin do OC, clique em SISTEMA, CONFIGURAÇÕES, na sua loja clique em EDITAR, vá na aba SERVIDOR e então ative a opção EXIBIR ERROS e LOG DE ERROS (não sei se são esses os nomes corretos na tradução PT do OC).
ativei o log de erros, daí aparece isso:
Código: Selecionar todos
Notice: Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY LCASE(pd.name) ASC, LCASE(pd.name) ASC LIMIT 0,6' at line 1
Error No: 1064
SELECT DISTINCT ps.product_id, (SELECT AVG(rating) FROM oc_review r1 WHERE r1.product_id = ps.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating FROM oc_product_special ps LEFT JOIN oc_product p ON (ps.product_id = p.product_id) LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN oc_product_to_store p2s ON (p.product_id = p2s.product_id) WHERE p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0' AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) GROUP BY ps.product_id LIMIT 5 ORDER BY LCASE(pd.name) ASC, LCASE(pd.name) ASC LIMIT 0,6 in /home/brunorx/public_html/system/database/mysql.php on line 50

Ola @felipesujf Se você extrai os arquiv[…]

extensção -> Módulos

Voltou ao normal sozinho

Olá Uso o OpenCart 2 e tenho algumas d&uac[…]

Night games. One night, no worries Real Women P[…]