Ajax Arama Modülü 1.5.x

ea430

OpenCart-TR
Katılım
21 Mar 2011
Mesajlar
105
Tepkime puanı
0
Puanları
0
Konum
istanbul
Merhaba Arkadaşlar.
OpenCart.Com Gezerken Ajax ile yapılmış akkıllı arama modülü gördüm ve kendim test ettim herhangi bir problem yaşamadım ve şuan kullanmaktayım.

Paylaşmakta olduğum modül. 1.5.x sürüm içindir 1.4.x ile ilgilenmediğimden dolayı onu paylaşmak istemiyorum zaten arkadaşlar daha önce paylaşmışlar sanırım.

Neyse modülün kurulum işlemine bakarsak çok estek olduğunu soyliyebilirim yapmanız gereken tek şey aşağıda paylaşmış olduğum bilgileri lütfen dikkatline yapmanız.

Kurulum.
Öncelikle ekteki dosyayı indirip ana dizine atmanız.

Açın:
catalog/view/theme/your_theme/template/common/footer.tpl

Bulun:

Üstüne Ekleyin
<script type="text/javascript" src="catalog/view/javascript/livesearch.js"></script>

==========================================================================================================

Açın:
catalog/view/theme/your_theme/template/common/header.tpl

Bulun:
<?php echo $google_analytics; ?>

Üstüne Ekleyin
<link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/livesearch.css" />

==========================================================================================================

Açın:
catalog/controller/product/search.php

En Allata Aşağıdaki kodların önüne:
Kod:
}
	?>

Üzerine Şu Kodları Ekleyin
Kod:
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 .= ' ORDER BY LOWER(pd.name) ASC, LOWER(p.model) ASC';
				$sql .= ' LIMIT 15';
				$res = $this->db->query( $sql );
				if( $res ) {
					$data = ( isset($res->rows) ) ? $res->rows : $res->row;
					
					// For the seo url stuff
					$basehref = '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->url->link($basehref . $values['product_id'])
						);
					}
				}
			}
		}
		echo json_encode( $data );
	}

Görünüm:
attachment.php


Not.: Lütfen uygulamayı iyice okuyun ve yanlış birşey yapmamaya çalışın modul şuan kullandığım için neden bu hatayı alıyorum gibi soruları kaldırmak istiyorum konu altında amacım paylaşılan bilgileri ortak bir fikir yürüterek geliştirmek sadece saçma sapan soruların yüzünden zaman kaybı ve insanların dikatinin dahılmasını istemiyorum...

Ayrıca sorun yaşadığınızda yazın tabiki ama yazmadan önce işlemi bir daha gözden geçirmenizi rica ediyorum bütün foruma göz attığımda binlerce gereksiz msj görüyorum lütfen yanlış anlaşılmasın amacım birilerini kırmak ve/veya küçük düşürmek değil sadece yanlış yapılan bir işlem yüzünden onlarca forum kullanıcının dikkatini dağıtıyorlar.

saygılarımla.
 

Ekli dosyalar

  • AJAXSearch_15.zip
    22.3 KB · Görüntüleme: 1,260
  • arama.jpg
    arama.jpg
    194.5 KB · Görüntüleme: 4,152

bydewa

OpenCart-TR
Katılım
17 Mar 2010
Mesajlar
4
Tepkime puanı
0
Puanları
0
çok tesekkürler hocam, deneyeceğim.
 

neyzel

OpenCart-TR
Katılım
12 Ocak 2011
Mesajlar
20
Tepkime puanı
0
Puanları
0
.

Gayet güzel! Sitesinde çok sayıda ürün olanlar uygulamayı deneyip arama hızı hakkında deneyimlerini paylaşırsa seviniriz.

Ancak arama kutusundan arama yaparken enaz 3 karakter girilmeisi gerekir. Bu sayıyı azaltıp çoğalmak mümkün.

Değişikliği yapmak için:

1) Ekleme yaptığınız catalog/controller/product/search.php dosyasını açıp
public function ajax() foxsiyonu içinde aşağıdaki kodu bulun ve oradaki sayıyı değiştirin.
PHP:
// Perform search only if we have some keywords
	if( strlen($keywords) >= 3 ) {  //3 orjinal değer aramaya başlama sayısı. Bu sayıyı değiştirin.

2) Kopyaladığınız catalog/view/javascript/livesearch.js dosyasını açıp aşağıdaki kodu bulun ve oradaki sayıyı değiştirin.
PHP:
	if( keywords == '' || keywords.length < 3 ) {  //3 orjinal değer, aramaya başlama sayısı. Bu sayıyı değiştirin.
 

borma

OpenCart-TR
Katılım
3 Haz 2011
Mesajlar
69
Tepkime puanı
0
Puanları
0
teşekkürler gayet güzel çalıştı eline sağlık
 

tolga35

OpenCart-TR
Katılım
28 Mar 2010
Mesajlar
185
Tepkime puanı
0
Puanları
0
Yaş
43
Konum
izmir
listelemede ürün kodunun cıkmamasını nasıl sağlarız
 

promavi

OpenCart-TR
Katılım
28 Ocak 2011
Mesajlar
2
Tepkime puanı
0
Puanları
0
Uyguladım, çok güzel çalışıyor. Emeğinize, elinize sağlık.
 

maxitr

OpenCart-TR
Katılım
15 Kas 2010
Mesajlar
5
Tepkime puanı
0
Puanları
0
Çok ürünlü siteler için çok makül bir geliştirme ama ziyaretçi ve arama sayısı arttıkça mysql de yorma yapmaz mı ? :S
 

ikorkmaz

OpenCart-TR
Katılım
26 Haz 2011
Mesajlar
44
Tepkime puanı
0
Puanları
0
güzel bi modül tebrikler çok işe yarar
 

irembagi

OpenCart-TR
Katılım
21 Eyl 2010
Mesajlar
163
Tepkime puanı
0
Puanları
0
Yaş
47
Konum
Bursa
Web sitesi
www.bakkoop.com
çok teşekkürler elinize sağlık bir sorum olacak türkçe karakter sorunu yaşıyorum
nasıl düzeltebilirim türkçe karakterleri bozuk gösteriyor
 

ensatm

OpenCart-TR
Katılım
28 Ağu 2011
Mesajlar
11
Tepkime puanı
0
Puanları
0
Konum
izmir
[attachment=1104]
Paylaşım için çok teşekkür dostum , süper çalışıyor gerçekten ihtiyacımda vardı üstüne yazdın. Ufak bir sorunum oldu düzeltmeye çalıştım Dw ile fakat tüm renk kodlarını değiştirmeme rağmen, backg. gelmedi yazıların arkasına resimde gördüğünüz gibi ... büyük ihtimal temamdan kaynaklanıyor fikir verebilecek varsa sevinirim çok hoşuma gitti kullanmak istiyorum :). Fikir ve yardımlarınız için şimdiden teşekkürler.
 

Ekli dosyalar

  • ajaxxx.jpg
    ajaxxx.jpg
    77.9 KB · Görüntüleme: 527

blue_caplan

OpenCart-TR
Katılım
19 Ocak 2010
Mesajlar
53
Tepkime puanı
0
Puanları
0
ben de denedim ama bende türkçe karakter hatası verdi benim kulladıgım süürrm 1.5.1.3.1
 

DiaDora

OpenCart-TR
Katılım
22 Ara 2011
Mesajlar
2
Tepkime puanı
0
Puanları
0
bu sayfayı sık kullanılanlara ekledim malum temalarda yeniden düzenlemek gerekiyor teşekkürler
 

ensatm

OpenCart-TR
Katılım
28 Ağu 2011
Mesajlar
11
Tepkime puanı
0
Puanları
0
Konum
izmir
Version 1.5.1.3.1 orjinal temada sorunsuz calisiyor....
 

irembagi

OpenCart-TR
Katılım
21 Eyl 2010
Mesajlar
163
Tepkime puanı
0
Puanları
0
Yaş
47
Konum
Bursa
Web sitesi
www.bakkoop.com
http://www.ulker.com.tr
sağ üst köşedeki arama kutusu harika ona benzetilebilir mi?
 
Üst