Opencart SEO Kelime Kontrolü

Opencart SEO Kelime Kontrolü

(Opencart SEO Kelime Kontrolü) : Öncelikle herkese selam;

Bildiğiniz üzere opencart kullanıcılarının en büyük sıkıntılarından biridir ekledikleri ürünlerde kullandıkları seo kelimelerinin kontrolünün yapılmaması.

Mesela opencart da eklediğiniz bir ürüne diyelim ki “bloknot-kagit” diye yazdığınız bir baksa ürü n eklemek istediğinizde bu kelimeyi bir kez daha yazdığınızda sistem hiçbir şekilde sizi uyarmaz ve daha önce eklediğiniz aynı seo kelimeyi taşıyan ürününüzle yeni ürününüz çakışır.

Bu sebep den dolayı sizin en büyük ihtiyaçlarınız arasında oluğunu düşündüğüm ve benim de kullanmış olduğum bir yöntemi sizinle paylaşmak istiyorum.

Web de otomatik seo opencart için modüller olsa da benim pek de işimi görmediği için böle bir yöntemin sizinde hoşunuza gideceğini düşünüyorum.

Öncelikle yöntemimiz birkaç dosyada yapacağımız değişiklikler sonucu sistemimizde aktif olacaktır.

Peki ne işe yaradığı konusunda biraz bilgi vereyim; Bir ürün eklediğiniz tüm ayarları falan tamam ve son geldik seo kelimesine, seo kelime alanına yazdığınız kelimeler hızlı bir şekilde kontrol edilerek size daha öncesinde kullanılıp kullanılmadığına dair bilgi vermekte, sizde bu sayede aynı seo kelimesini kullanmamış oluyorsunuz.

Aşağıda belirttiğim şekilde adım yaparak yöntemimizi devreye alalım;

Adım 1

admin/view/template/catalog/product_form.tpl

<!--?php echo $keyword; ?-->

Yukarıda yazan kodu bulun ve altına alta yazılı olan kodu yapıştırın.

 

 


 

Aynı dosya içerisinde

<!--?php echo $keyword; ?-->"

Yukarıda yazan kodu bulun ve altta yazılı olan kodla değiştirin.

<!--?php echo $keyword; ?-->" id="seo_keyword"

 


 

Aynı dosya içerisinde

<!--?php echo $footer; ?-->

Yukarıda yazan kodu bulun ve bulduğunuz kodun üzerine alta yazılı olan kodu ekleyin.

<script type="text/javascript">// <![CDATA[
$( "#seo_keyword" ).keyup(function() {
 
		$.ajax({
		    dataType: 'json',
		    type: 'POST',
    		url: 'index.php?route=catalog/product/checkKeyword&#038;token=<?php echo $this->request->get['token']; ?>',
    		data: 'product_id=<?php echo $this->request->get['product_id']; ?>&#038;keyword=' + encodeURIComponent($('input[name=\'keyword\']').val()),
		    success: function(result){
		      if (result.error) {
		        $('#seo_keyword_msg').html('
 
 
 
 
 
 
 
 
 
 
 
<div class="warning">' + result.error + '</div>
 
 
 
 
 
 
 
 
 
 
 
');
		      }
 
		      if (result.success) {
		        $('#seo_keyword_msg').html('
 
 
 
 
 
 
 
 
 
 
 
<div class="success">' + result.success + '</div>
 
 
 
 
 
 
 
 
 
 
 
');
		      }
		    }
          });
 
	});
// ]]></script>

 


 

Adım 2

admin/controller/catalog/product.php

autocomplete

Yukarıda yazan kodu bulun ve bulduğunuz kodun üzerine alta yazılı olan kodu ekleyin.

public function checkKeyword() 
	{
		$json = array();
 
		if (isset($this-&gt;request-&gt;post['product_id'])) 
		{
    		$product_id = $this-&gt;request-&gt;post['product_id'];
    	} 
    	else 
    	{
    		$product_id = 0;
    	}
 
		if (isset($this-&gt;request-&gt;post['keyword'])) 
		{
    		$keyword = $this-&gt;request-&gt;post['keyword'];
    	} 
    	else 
    	{
    		$keyword = '';
    	}
 
		$data = array(
    		'keyword'         =&gt; $keyword,
    		'product_id'        =&gt; $product_id
    	);
 
		if(strlen($keyword)&gt;0)
		{
			$this-&gt;load-&gt;model('catalog/product');
			$results = $this-&gt;model_catalog_product-&gt;checkKeywords($data);
 
			if($results['total'] == 0)
			{
				$json['success'] = 'Success: The keyword you have entered is checked as unique.';
			}
			else
			{
				$json['error'] = 'Warning: The keyword you have entered is already used elsewhere on the site.';
			}
 
			$this-&gt;response-&gt;setOutput(json_encode($json));
		}
	}

 


 

Adım 3

admin/model/catalog/product.php

getTotalProductsByTaxClassId

Yukarıda yazan kodu bulun ve bulduğunuz kodun üzerine alta yazılı olan kodu ekleyin.

public function checkKeywords($data = array()) 
			   {
			   	  if($data['product_id'] &gt; 0)
			   	  {
					  $query = $this-&gt;db-&gt;query("SELECT COUNT(`keyword`) AS total FROM " . DB_PREFIX . "url_alias WHERE keyword = '" . $data['keyword'] . "' AND query &lt;&gt; 'product_id=".(int)$data['product_id']."'");
 
			 		  return $query-&gt;row['total'];
			   	  }
			   	  else
			   	  {
					  $query = $this-&gt;db-&gt;query("SELECT COUNT(`keyword`) AS total FROM " . DB_PREFIX . "url_alias WHERE keyword = '" . $data['keyword'] . "'");
 
			 		  return $query-&gt;row['total'];
			   	  }
			 }

 


 

Hepsi bu kadar… Yaptığınız değişikler sonucu herhangi bir değişim gerçekleşmez ise lütfen benimle iletişime geçin sağlıcakla kalın,

Saygılarımla,

opencart-seo-kelime-kontrolu

 

Comments are closed.