mirac
OpenCart-TR
- Katılım
- 7 Şub 2010
- Mesajlar
- 1,383
- Tepkime puanı
- 0
- Puanları
- 36
- Yaş
- 43
- Konum
- Beykoz____
- Web sitesi
- www.notebook-cantasi.com
Anasayfada müşterileriniz arama çubuğuna yazdıkları anahtar kelimeyi ajaxs yardımıyla ip uçları gösteren kullanışlı bir modul..
Ekteki catalog dosyasını anadizine atmanız yeterli..
1.4.6, 1.4.7 1.4.8.x ve 1.4.9.x ile test edilmiştir..
catalog/view/theme/your_theme/template/common/header.tpl
BUL
SONRASINA EKLE
Bu kod 1.4.9.x içindir. Eski sürümler için zip içindeki readme.txt dosyasına bakınız
catalog/controller/product/search.php
BUL
ÖNCESİNE EKLE
Ekteki catalog dosyasını anadizine atmanız yeterli..
1.4.6, 1.4.7 1.4.8.x ve 1.4.9.x ile test edilmiştir..
catalog/view/theme/your_theme/template/common/header.tpl
BUL
Kod:
<link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/stylesheet.css" />
SONRASINA EKLE
Kod:
<link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/livesearch.css" />
<script type="text/javascript" src="catalog/view/javascript/livesearch.js"></script>
Bu kod 1.4.9.x içindir. Eski sürümler için zip içindeki readme.txt dosyasına bakınız
catalog/controller/product/search.php
BUL
PHP:
}
?>
ÖNCESİNE EKLE
PHP:
public function ajax()
{
// Contains results
$data = array();
if( isset($this->request->get['keyword']) ) {
// Parse all keywords to lowercase
$keywords = strtolower( $this->request->get['keyword'] );
// Perform search only if we have some keywords
if( strlen($keywords) >= 3 ) {
$parts = explode( ' ', $keywords );
$add = '';
// Generating search
foreach( $parts as $part ) {
$add .= ' AND (LOWER(pd.name) LIKE "%' . $this->db->escape($part) . '%"';
$add .= ' OR LOWER(p.model) LIKE "%' . $this->db->escape($part) . '%")';
}
$add = substr( $add, 4 );
$sql = 'SELECT pd.product_id, pd.name, p.model FROM ' . DB_PREFIX . 'product_description AS pd ';
$sql .= 'LEFT JOIN ' . DB_PREFIX . 'product AS p ON p.product_id = pd.product_id ';
$sql .= 'LEFT JOIN ' . DB_PREFIX . 'product_to_store AS p2s ON p2s.product_id = pd.product_id ';
$sql .= 'WHERE ' . $add . ' AND p.status = 1 ';
$sql .= 'AND pd.language_id = ' . (int)$this->config->get('config_language_id');
$sql .= ' AND p2s.store_id = ' . (int)$this->config->get('config_store_id');
$sql .= ' LIMIT 15';
$res = $this->db->query( $sql );
if( $res ) {
$data = ( isset($res->rows) ) ? $res->rows : $res->row;
// For the seo url stuff
$this->load->model('tool/seo_url');
$basehref = HTTP_SERVER . 'index.php?route=product/product&keyword=' . $this->request->get['keyword'] . '&product_id=';
foreach( $data as $key => $values ) {
$data[$key] = array(
'name' => htmlspecialchars_decode($values['name'] . ' (' . $values['model'] . ')', ENT_QUOTES),
'href' => $this->model_tool_seo_url->rewrite($basehref . $values['product_id'])
);
}
}
}
}
echo json_encode( $data );
}