-
Como criar uma lojaVeja aqui o que você precisa saber para iniciar suas vendas online!Mais
-
PagSeguro UOLVocê já conhece essa ferramenta? Com o PagSeguro você pode vender pela Internet mesmo sem ter uma loja virtual. É tão fácil!Mais
-
Calculo de FreteSeus clientes precisam saber quanto vão pagar de frete? Temos uma solução gratuita!Mais
-
Agenda Campus PartyAgenda otimizada da #CPbr com funcionalidades extras que irão te auxiliar durante a semana do evento.Mais
Como melhorar o filtro de produtos no administrativo do Opencart
-
Olá,
Hoje precisei fazer uma alteração simples em uma loja e gostaria de compartilhar ela. Estou fazendo isso em uma loja Opencart 1.5.1.2. Talvez em outra versão só mude o numero da linha.
No administrativo, mais especificamente na parte de produtos, tem o campos de filtros. Isso ajuda bastante.
Mas por enquanto o filtro só pega o começo do nome do produto. Se você buscar uma parte do meio do nome o filtro não vai trazer o resultado desejado. Por esse motivo essa modificação que vou passar fará com que traga todos os produtos que tenha o trecho pesquisado em qualquer posição do nome.
Alteração no Arquivo product.php:
Abra o arquivo “admin/model/catalog/product.php” e vá até a linha 338, coloque apenas o “%” nos pontos mostrado abaixo em vermelho:
public function getProducts($data = array()) {
if ($data) {
$sql = "SELECT * FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE pd.language_id = '" . (int)$this->config->get('config_language_id') . "'";if (isset($data['filter_name']) && !is_null($data['filter_name'])) {
$sql .= " AND LCASE(pd.name) LIKE '%" . $this->db->escape(mb_strtolower($data['filter_name'], 'UTF-8')) . "%'";
}if (isset($data['filter_model']) && !is_null($data['filter_model'])) {
$sql .= " AND LCASE(p.model) LIKE '%" . $this->db->escape(mb_strtolower($data['filter_model'], 'UTF-8')) . "%'";
}if (isset($data['filter_price']) && !is_null($data['filter_price'])) {
$sql .= " AND p.price LIKE '" . $this->db->escape($data['filter_price']) . "%'";
}Adicionando apenas isso está pronto! Agora, a mesma palavra que pesquisada na imagem acima mostra todos os produtos que a contém, independente da posição:
Essa alteração também afeta o modelo. Caso pesquise por “modelo”, o termo pesquisado vai ser localizado em qual posição do texto.
Download da Alteração para vQmod:
Segue a alteração em vQmod (conheça mais sobre o vQmod acessando este link). É só adicionar o aquivo XML que estou passado na pasta “xml” de seu vQmod. Caso tenha dúvidas para instalar o vQmod, acesse aqui.
Essa alteração foi bem simples porém pode ser de grande ajuda.
Se inscreva em nosso curso de OpenCart que logo abriremos as inscrições.





