Fórum OpenCart Brasil

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

#15334
Olá colegas da OCBr.

Hoje 11/02, foi disponibilizada uma atualização interessante que vai acompanhar a nova versão do OpenCart 1.5.2 que ainda vai ser lançada, mas que já pode ser aplicada a versão 1.5.1.3 e possivelmente as anteriores, pois ela traz uma melhoria significativa para o mecanismo de busca da loja; esta melhoria irá se fazer presente quando um cliente fizer a pesquisa por um produto, e o OpenCart procurar nas tags do produto se há alguma tag que combine com algumas das palavras digitadas pelo cliente no campo de busca da loja.

Exemplo:

Produto: Banheira com Hidromassagem
Tags: banheira, hidromassagem, luxo

Produto: Banheira com Hidromassagem e Televisão
Tags: banheira, hidromassagem, classica

- Antes da atualização:

Busca por: luxo classica

Resultado: Banheira com Hidromassagem

- Depois da atualização:

Busca por: luxo classica

Resultado: Banheira com Hidromassagem, Banheira com Hidromassagem e Televisão

Ou seja, antes da atualização só a primeira palavra digitada no campo de busca foi levada em consideração para a busca nas tags dos produtos resultando em apenas um produto (segundo o nosso exemplo), e depois da atualização todos os produtos que tiverem qualquer uma das palavras digitadas vão aparecer no resultado da busca (ainda seguindo o nosso exemplo). Explicada a melhoria, vamos a atualização:

1) Localize o arquivo product.php que está no diretório /catalog/model/catalog/, e localize o seguinte código que você encontrará duas vezes no arquivo:
Código: Selecionar todos
$implode[] = "LCASE(pt.tag) LIKE '%" . $this->db->escape(utf8_strtolower($data['filter_tag'])) . "%' AND pt.language_id = '" . (int)$this->config->get('config_language_id') . "'";
2) E substitua as duas ocorrências do código acima pelo código abaixo:
Código: Selecionar todos
$implode[] = "LCASE(pt.tag) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' AND pt.language_id = '" . (int)$this->config->get('config_language_id') . "'";
3) Salve as alterações no arquivo.

4) Acesse o diretório /system/cache/ e delete todos os arquivos da pasta com exceção do arquivo index.html.

Pronto! Nos testes que fiz senti uma melhora significativa nos resultados da busca, o que pode ser convertido em mais pedidos para a sua loja.

Agradecimentos ao Renato Frota, que foi quem me chamou atenção para uma discussão sobre esse assunto no fórum oficial.

Espero que ajude e tenham gostado. :D
#15814
Não se preocupe em não ter tanto tempo, todos nós as vezes ficamos sem tempo, é só não esquecer que estamos aqui. :D
profbaco escreveu:Gostei desta melhoria.. parabéns a galera de desenvolvimento, pena que nao tenho tanto tempo para me dedicar mais a mesma.
#16630
Manoel Vidal escreveu:
1) Localize o arquivo product.php que está no diretório /catalog/model/catalog/, e localize o seguinte código que você encontrará duas vezes no arquivo:
Código: Selecionar todos
$implode[] = "LCASE(pt.tag) LIKE '%" . $this->db->escape(utf8_strtolower($data['filter_tag'])) . "%' AND pt.language_id = '" . (int)$this->config->get('config_language_id') . "'";
2) E substitua as duas ocorrências do código acima pelo código abaixo:
Código: Selecionar todos
$implode[] = "LCASE(pt.tag) LIKE '%" . $this->db->escape(utf8_strtolower($word)) . "%' AND pt.language_id = '" . (int)$this->config->get('config_language_id') . "'";
3) Salve as alterações no arquivo.
Não achei a linha especificada no meu, uso a versão 1.5.1
#16678
brunocabral escreveu:Achei várias $data['filter_tag'] posso mudas todas pra ($word)?
Compare as linhas que achou com a linha em questão que está aqui no tópico.

Nssas duas ocorrências citadas aqui no tópico, pouco antes você tem a variavel $word sendo gerada. Nas outras, a variável é filter_tag mesmo, se mudar vai estragar a busca em vez de melhorar.

Se ficar muito difícil de corresponder as ocorrências que você achou com as do tópico, é porque seu opencart é de outra versão ou já foi modificado. Nesse caso, coloque o conteúdo do arquivo completo aqui, entre as tags
Tradução não funciona

Olá, @Top Arts Digital ! Tudo bem? A vers&[…]

Alterações Como Fazer?

Ola @KingKong Acesse o codigo do bloco e fa&cce[…]

Estou com um problema também na Integra&cce[…]

Procuro agência especializada e opencart

queria uma pessoa para configurar e instalar meu o[…]