Kategoriler
İpuçlar Opencart

CloudPanel Nginx için Opencart 3x SEO URL ayarı

Merhaba arkadaşlar,

Cloud sunucular ve cloud network üzerine birçok çalışma yapıyorum. Bilinen tüm datacenterlarda cloud sunucularla ilgili çalıştım ve halen daha çalışmalarıma, denemelerime devam ediyorum. Hangi linux işletim sisteminde, hangi kontrol paneli daha performanslı bunun peşindeyim. Mevcut OpenCart 3x site üzerinde herhangi bir sıkıştırma vb. ayarı yapmadan, sadece sunucu türü ve kontrol paneli değiştirerek gtmetrix üzerinden aldığım en iyi performans sonucu şu şekilde:

 

Kullanılan işletim sistemi ubuntu ve kontrol paneli olarak da controlpanel kullandım. Nginx web sunucusu her zamanki tercihim. Gelelim bu yazıyı yazma amacıma, ubuntu+controlpanel kurulumundan sonra, sunucunuzda opencart çalıştırmak istediğinizde sorunsuz çalışıyor fakat seo url’ler de sıkıntı çıkıyor. .htaccess dosyanız doğru yapılandırılmış olsa bile seo url’ler çalışmıyor. Sorun nginx vhost yapılandırmanızdan kaynaklanıyor. Aşağıda yazdığım location parametrelerini, nginx domain hesabı altındaki vhost ayalarınızda belirttiğim yere eklemeniz sonrasında opencart 3x seo url‘leriniz sorunsuz çalışacaktır. 

Her zaman centos sunucu tarafındaydım fakat “her zaman daha iyisi” prensibim nedeniyle şuan için ubuntuya geçtim. Denemelerim devam ediyor ve karşılaştığım sorunlarla ilgili webte bir döküman bulamazsam blogumda bu şekilde paylaşacağım. 

try_files $uri $uri/ /index.php?$args;
index index.php index.html;

sonrasına aşağıdaki kodu ekle:

#SEO URL Settings
# Nginx configuration of OC htaccess
location = /sitemap.xml {
rewrite ^(.*)$ /index.php?route=feed/google_sitemap break;
}

location = /googlebase.xml {
rewrite ^(.*)$ /index.php?route=feed/google_base break;
}

location / {
# This try_files directive is used to enable SEO-friendly URLs for OpenCart
try_files $uri $uri/ @opencart;
}

location @opencart {
rewrite ^/(.+)$ /index.php?_route_=$1 last;
}
# End SEO settings

Kodu ekledikten sonra ayarlarınız şu şekilde olmalıdır. Resmi büyüterek bakabilirsiniz, mavi ile belirttiğim alan.

 

 

1000küsür ürünlü, aktif opencart 3x sitenizde benimki gibi A değeri performans yakalayabilen var ise lütfen paylaşsın 🙂

 

Kategoriler
Opencart

OpenCart 4 veya OpenCart 3 – Opencart’ın en kararlı versiyonu hangisi?

OpenCart, popüler bir açık kaynaklı e-ticaret platformudur. İndirmesi ve kullanması ücretsizdir ve eklentiler ve eklentilerle genişletilebilen çok çeşitli özellikler sunar. Yakın zamanda piyasaya sürülen OpenCart 4 ile birçok kullanıcı, çevrimiçi mağazalarında kullanmak için yeterince kararlı olup olmadığını merak ediyor. Bu makalede, hangi sürümün sizin için doğru olduğuna karar vermenize yardımcı olmak için OpenCart 4 ile OpenCart 3‘ü karşılaştırıyoruz.

OpenCart 4’te neler değişti?

En son ana sürüm ile önceki OpenCart platform yapısı arasında neler değişti: OpenCart 4’e karşı OpenCart 3?

  • Ocmod kullanılamaz. Şu anda, modülleri entegre etmek için Etkinlikler kullanılmalıdır.
  • Modülleri depolamak için kullanılan klasörlerin yapısı: Her uzantının (veya yazarın), artık tüm eklenti dosyalarını barındıran yeni kök dizini /extension/ içinde kendi dizini olacaktır. Ara uzantı klasörü de aynı anda silinmiştir. Sonuç olarak, modülün ön uç denetleyicisine giden yol şu olacaktır: /extension/opencartbot/catalog/controller/module/new_module.php. Ek olarak, modül şablonuna giden yol şu olacaktır: /extension/opencartbot/catalog/view/template/module/new_module.twig
  • Daha önce liste şablonlarında yer alan ürün bloğu product/thumb.twig konumuna taşındı. Düğmeyi değiştirmek veya ürüne çıkartma eklemek için artık tüm şablonları düzenlemenize gerek yok.
  • common/pagination.twig şablonu artık sayfalandırma içeriyor.
  • Tek bir ürünün birden fazla versiyonunu üretebilme
  • GDPR yönetmeliği uyumluluğu için araçlar
  • Tek sayfalık ödeme formu (sonunda yani 🙂 )
  • CRON Görev Zamanlayıcısı
  • Yöneticiyi yeniden adlandırma imkanı
  • PHP’nin 8.1+ sürümü, kullanılan minimum düzeydedir.
  • Düzen, kullanılmakta olan Bootstrap çerçevesi sürüm 5’e güncellendiğinden beri değişti.
  • Font koleksiyonunun 5. versiyonu Font Awesome
  • Kitaplığın yeni bir sürümü olan jQuery 3.6.0 eklendi
  • Yeni sürümü yükledikten sonra bunlar gibi çok daha fazla değişiklik ve geliştirme görebilirsiniz.

Opencart 4’ü kullanmanın birçok önemli avantajı vardır. Tipik olarak, arayüz daha kullanıcı dostudur ve ihtiyacınız olan özellikleri bulmak daha kolaydır. Ayrıca Opencart 4, öncekinden daha verimli ve daha hızlıdır.

OpenCart 4.0 hala nispeten yeni olsa da e-ticaret mağazalarında şimdiden büyük bir etki yarattı. Özellikler açısından OpenCart 4.0, selefi OpenCart 3.0‘a göre bir dizi önemli iyileştirmeye sahiptir.

Uyumlu PHP Sürümü

OpenCart 3, PHP 7.1 veya üstü ile çalışacak şekilde tasarlanmıştır, Opencart 4 ise PHP 8.1 veya üstü ile uyumludur. Opencart’ın (3.x) önceki sürümleri PHP 8.1 ile uyumlu değildir ve bu nedenle Opencart 4’e yükseltilemez.

Sunucunuzda PHP’nin daha eski bir sürümünü çalıştırıyorsanız, Opencart 4’ü yüklemek için daha yeni bir sürüme yükseltmeniz gerekecektir. PHP sürümünüzü yükselttikten sonra, Opencart 4’ü yükleyebilir ve avantajlarından yararlanabilirsiniz.

Kod Yapısı Nasıl?

OpenCart 4 ve OpenCart 3‘ün her ikisi de kod için modüler bir yapı kullanır, bu da her bir işlevin kendi modülünde tutulduğu anlamına gelir. Bu, platformun işlevselliğini özel ihtiyaçlarınıza uyacak şekilde özelleştirmeyi kolaylaştırır. Ayrıca, modüler kod yapısı, yalnızca ilgili modüllerin güncellenmesi gerektiğinden, yükseltmelerin uygulanmasının hızlı ve kolay olmasını sağlar.

OpenCart 4, daha tutarlı ve anlaşılması daha kolay olacak şekilde tasarlanmış yeni bir dizin yapısı sunar. Ayrıca OpenCart 4, kod için farklı modüller arasında ad çakışmalarını önlemeye yardımcı olan ad alanlarını kullanır. Sonuç olarak, OpenCart 4’ün genel kod yapısı, OpenCart 3’ünkinden daha sağlam ve kullanımı daha kolaydır. Ayrıca, Opencart 4, herhangi bir e-Ticaret işletmesi için esnek ve ölçeklenebilir bir çözüm sunar.

OpenCart 3’ün kod yapısı MVC (Model-View-Controller) çerçevesine dayanmaktadır. MVC, bir programı üç bölüme ayıran bir yazılım mimarisi modelidir: model, görünüm ve denetleyici. Model verileri temsil eder, görünüm verileri görüntüler ve denetleyici kullanıcı girişini işler.

OpenCart 4 ve OpenCart 3’ün Veritabanı Yapısı

OpenCart 3

Opencart 3 bir MySQL veritabanı kullanır. Bir MySQL veritabanı kullanmanın ana yararı, çeşitli araçlar kullanılarak kolayca erişilebilmesi ve güncellenebilmesidir. Opencart 3, PostgreSQL gibi diğer veritabanlarının kullanımını da destekler, ancak çoğu kullanıcı için MySQL önerilen veritabanıdır.

Opencart 3 veri tabanının yapısı modülerdir ve yeni özellikler ve işlevler eklemeyi kolaylaştırır. Veritabanındaki çekirdek tablolar, ürün verilerini, müşteri verilerini, sipariş verilerini ve diğer temel bilgileri depolama işlevi görür. Ek olarak, veritabanına ek tablolar ekleyen birkaç üçüncü taraf eklentisi vardır.

Bu eklentiler, özel alanlar, ödeme yöntemleri, gönderim yöntemleri ve çok daha fazlası için destek ekleyebilir. Sonuç olarak, Opencart 3 veri tabanı oldukça esnektir ve herhangi bir çevrimiçi mağazanın ihtiyaçlarını karşılamak üzere kolayca özelleştirilebilir.

OpenCart 4

OpenCart 4 ve OpenCart 3 veritabanı yapısı benzerdir, ancak dikkat edilmesi gereken bazı önemli farklılıklar vardır. En büyük fark, OpenCart 4’ün bir NoSQL veritabanı kullanmasıdır, yani geleneksel ilişkisel modeli kullanmaz. Bu, onu daha esnek ve ölçeklenebilir hale getirir, ancak aynı zamanda performans ve kullanım kolaylığı açısından bazı ödünleşimler olduğu anlamına gelir.

Diğer bir fark, OpenCart 4’ün şemasız bir veritabanı kullanmasıdır, bu da verilerin herhangi bir formatta saklanabileceği anlamına gelir. Bu, verileri depolamayı ve sorgulamayı kolaylaştırır, ancak aynı zamanda izlenecek katı bir yapı olmadığı anlamına gelir.

Son olarak, OpenCart 4 belge odaklı bir veritabanı kullanır, bu da verilerin tablolar yerine belgelerde saklandığı anlamına gelir. Bu, onu daha ölçeklenebilir ve esnek hale getirir, ancak aynı zamanda izlenecek katı bir yapı olmadığı anlamına gelir.

Web Sitesi Yükleme Hızı Nasıl?

OpenCart 4 ile OpenCart 3‘ün yükleme hızı şu ölçütlerle karşılaştırılabilir: sayfa boyutu, istek sayısı ve ilk bayta kadar geçen süre. OpenCart 3’ün daha büyük bir sayfa boyutu var, ancak daha az istek var. OpenCart 3 için ilk bayta kadar geçen süre daha yavaştır. OpenCart 4’ün sayfa boyutu daha küçüktür ve daha fazla istek vardır. OpenCart 4 için ilk bayta kadar olan süre daha hızlıdır.

Genel olarak, OpenCart 4, sayfa yükleme ve istekleri işleme söz konusu olduğunda OpenCart 3’ten daha hızlıdır. Bu, OpenCart 4’ün geliştirilmiş performans için tasarlanmış yeni bir çerçeve kullanması gerçeğine bağlanabilir. Sonuç olarak, müşterilerin bir OpenCart 4 sitesinde olumlu bir deneyim yaşama olasılığı daha yüksektir, bu da satışların ve dönüşümlerin artmasına yol açabilir.

Peki, en kararlı OpenCart sürümü hangisi?

Kullanıcı topluluğuna göre OpenCart’ın en kararlı sürümü OpenCart 3.0.3.8‘dir (OpenCart 3’ün son sürümü). Bu sürüm, MySQL 8 için iyileştirilmiş destek, VQMod kullanırken gelişmiş güvenlik ve ödeme ve gönderim yöntemlerini kullanırken artan kararlılık gibi çeşitli iyileştirmeler ve hata düzeltmeleri içerir.

Bu sürüm, kullanımı daha da kolaylaştıran birçok yeni özellik ve iyileştirme ile şimdiye kadarki en kararlı sürüm olarak biliniyor. En büyük yeni özelliklerden biri, birden çok dil için yerleşik destektir. Bu, artık çevrimiçi mağazanızla daha geniş bir kitleye ulaşabileceğiniz anlamına gelir.

Ayrıca OpenCart 3.0.3.8, çeşitli güvenlik geliştirmelerinin yanı sıra mobil cihazlar için geliştirilmiş destek içerir. Çevrimiçi bir iş yürütüyorsanız, kesinlikle OpenCart’ın bu sürümünü kullanmalısınız.

OpenCart 4 ve OpenCart 3: Hangisi daha iyi?

Opencart’ta yeniyseniz, hangi sürümün size uygun olduğunu merak ediyor olabilirsiniz. Hem Opencart 4 hem de Opencart 3’ün artıları ve eksileri olsa da, yeni kullanıcılar için Opencart 3‘ün daha iyi bir seçim olduğunu düşünüyoruz. İşte nedeni:

  • Her şeyden önce, Opencart 4 hala nispeten yeni – ilk sürüm 4.0.0.0 sadece 1 ay önce yayınlandı. Çok yeni olduğu için, eski, daha yerleşik Opencart 3’ten daha fazla hata olması kaçınılmazdır.
  • Buna ek olarak, Opencart 4 desteği hala biraz sınırlıdır – henüz çok sayıda uzantı ve tema mevcut değildir ve topluluk o kadar büyük değildir.
  • Önemli bir fark, mevcut modül sayısıdır. OpenCart 4 çıkalı bir aydan az oldu ve yalnızca üç alt sürümü mevcut. Bu, OpenCart 4’ü destekleyen modül sayısının daha az ve daha sınırlı olduğu anlamına gelir.

Sonuç olarak

OpenCart e-Ticaret platformu on yılı aşkın süredir piyasada. Yıllar boyunca, en sonuncusu OpenCart 4.0’ın piyasaya sürülmesi olmak üzere birkaç büyük güncellemeden geçti. Bu, yeni sürümü geliştirmek ve test etmek için çok çalışan geliştirme ekibi tarafından yakın zamanda doğrulandı.

Şu anda OpenCart 3 kullanıyorsanız, lütfen OpenCart 4’e geçiş yaparken önünüzde bazı tümsekler, engeller olabileceğini unutmayın. Ve OpenCart 4 ile OpenCart 3 arasında pek çok husus var. Sürüm, geliştirilmiş kararlılığı ve özellikleri için buna değer. Sağlıcakla kalın 🙂

 

Kategoriler
İpuçlar Opencart

Opencart 3.x sipariş sayfasını tek sayfaya ayarlama / opencart 3.x invoice page fit on one page

Merhaba arkadaşlar, 

Opencart 3.x sürümlerinde, browser kaynaklı bazı zamanlarda tek sayfalık bir sipariş sayfası çıktısı nedense 2 sayfa olarak yazıcıya gönderilecek olarak gözükmektedir. Örneğin chrome’da. Ölçekten sayfa boyutunu küçültseniz dahi 2 sayfa olarak çıktı gözükmekte. Bunun çözümü çok basit. Aşağıdaki adımları izleyerek sorundan kurtulabilirsiniz. Denenmiştir.

Düzeltme yapmadan önceki hali (before):

Düzeltme yaptıktan sonraki hali (after):

Nasıl düzelteceğiz? / How do we fix it?

/public_html/admin/view/template/sale/order_invoice.twig dosyasını html editör veya notepad++ uygulaması ile açın ve şu satırı bulun:

<div style="page-break-after: always;">

always yazısını auto olacak şekilde düzeltin (replace). Şu şekilde olmalı:

<div style="page-break-after: auto;">

Dosyayı kaydedin ve dizine yükleyin ve aşağıdaki işlemleri yapın:

1- Opencart Panel > Modifikasyonlar > Yenile yapın.

2- Tema ve SASS önbelleğini temizleyin. Şimdi kontrol edin, artık tek sayfa olarak çıktı alabilirsiniz.

Kategoriler
Opencart

Opencart 3.x ücretsiz ödeme aktif olmuyorsa? “opencart 3.x free checkout not showing”

Merhaba arkadaşlar,

Opencart 3.0.3.2 sürümünde başıma gelen ve 15dk lık uğraşmalarım ve araştırmalarım sonucu opencart 1.5.6.x’te kullanılan bir yöntem ile bu sorunu çözdüm. Örneğin müşteriniz sepetine 200,00TL‘lik ürün ekledi. Üzerine %10 indirim kuponu kullandı ve bununda üzerine hesabındaki 180TL bakiyeyi kullandı ve sepet tutarı 0,00TL oldu. Kupon kullanıldıktan sonra sepet tutarı eğer 0,00TL oluyorsa ödeme sayfasında “ücretsiz ödeme” aktif olmuyordu. Aşağıdaki dosyada yapacağınız ufak değişiklik ile bu sorunu çözebilirsiniz.

Dosyayı açın: catalog/model/extension/payment/free_checkout.php

if ($total <= 0.00) {

değerini;

if ($total <= 0.01) {

yapıp kaydedin.

Sonrasında, eklentiler > modifikasyonlar sekmesinden yenile (refresh) yapın.

Sorununuz düzelecektir. Benim sorunum bu şekilde düzeldi, kolay gelsin 🙂

Kategoriler
Opencart

opencart 3.x sürümlerinde ücretsiz ödeme ile alınan siparişler hatası

Merhaba arkadaşlar,

Opencart 3.x sürümlerinde varolan bu hata nedeniyle, müşterinize hediye bakiye vermeniz sonucu, 0,00TL ile ödeme yapıp siparişini oluşturduğunda bu sipariş admin paneli siparişler ekranında görünmemektedir. Eksik siparişlerde görünüyor. Bunun nedeni, admin > eklentiler > ödeme metodları > ücretsiz ödeme ayarının belirlediğiniz “sipariş durumunu” kaydetmemesi nedeni. Siz buradan istediğiniz bir sipariş durumunu seçiyorsunuz, kaydediyorsunuz fakat tekrar aynı ayara girdiğinizde kaydetmemiş olarak görünüyor. Sipariş durumunu belirleyemediğiniz için, müşteri ücretsiz ödeme ile sipariş verdiğinde eksik siparişlere düşüyor. Bunu basit bir yöntemle düzeltebilirsiniz. Opencart 3.0.3.2 versiyonunda denedim ve sorunum düzeldi.

Bu düzeltme işlemini denemeden önce veritabanı ve değişiklik yapacağını dosyaları yedeklemeyi unutmayınız.

İşlem aşamaları:

1- Öncelikle admin > eklentiler > ödeme metodlarından “ücretsiz ödemeyi” kaldırınız. Kırmızı butona basarak.

2- FTP yöneticiniz ile admin/controller/extension/payment/free_checkout.php dosyasını notepad++ ile açınız.

3- Aşağıdaki kod kümesini bulunuz:

if (isset($this->request->post['free_checkout_order_status_id'])) { $data['free_checkout_order_status_id'] = $this->request->post['free_checkout_order_status_id']; } else { $data['free_checkout_order_status_id'] = $this->config->get('free_checkout_order_status_id'); }

4- Aşağıdaki kod kümesi ile değiştiriniz ve dosyayı kaydedip kapatınız:

if (isset($this->request->post['payment_free_checkout_order_status_id'])) {
$data['payment_free_checkout_order_status_id'] = $this->request->post['payment_free_checkout_order_status_id'];
} else {
$data['payment_free_checkout_order_status_id'] = $this->config->get('payment_free_checkout_order_status_id');
}

5- admin/view/template/extension/payment/free_checkout.twig dosyasını notepad++ ile açınız.

6- Aşağıdaki kod kümesini bulunuz:

<select name="free_checkout_order_status_id" id="input-order-status" class="form-control">
{% for order_status in order_statuses %}
{% if order_status.order_status_id == free_checkout_order_status_id %}
<option value="{{ order_status.order_status_id }}" selected="selected">{{ order_status.name }}</option>
{% else %}
<option value="{{ order_status.order_status_id }}">{{ order_status.name }}</option>
{% endif %}
{% endfor %}

7- Aşağıdaki kod kümesi ile değiştirip, kaydedip kapatınız:

<select name="payment_free_checkout_order_status_id" id="input-order-status" class="form-control">
{% for order_status in order_statuses %}
{% if order_status.order_status_id == payment_free_checkout_order_status_id %}
<option value="{{ order_status.order_status_id }}" selected="selected">{{ order_status.name }}</option>
{% else %}
<option value="{{ order_status.order_status_id }}">{{ order_status.name }}</option>
{% endif %}
{% endfor %}

8- Eklentiler > modifikasyonları “yenile” yapınız.

9- Admin paneli sağ üst taraftan tema ve sass önbelleğini temizleyiniz.

10- Ödeme metodlarından “ücretsiz ödemeyi” tekrar yükleyiniz.

11- Ödeme metodunuza girip, sipariş durumunu belirleyip kaydedin.

İşlemler sonrasında belirlediğiniz sipariş durumunun sisteme artık kayıt edildiğini göreceksiniz. Varsayılan sipariş durumunuza kaydedin. Artık müşterileriniz hesap bakiyeleri ile ödeme yaptığında admin panelinde siparişler ekranına düşecektir. Kolay gelsin 🙂

 

 

 

Kategoriler
İpuçlar Opencart

Centos 7 Sunucularda SSH Port Değiştirme

SSH (Secure Shell / Güvenli Kabuk), bir sunucunun en önemli ağ protokolüdür. Varsayılan port numarası 22’dir.

Sunucunun tüm yazılımsal yönetiminin yapılabildiği bu protokolün port numarası (kapısı) sabittir ve saldırılara çok açıktır. Hatta, yeni bir sunucu kurduğunuzda IP adresi üzerinden ssh kapısına flood saldırılar başlayacaktır. Bu sebeple, sunucu kurulum işleminden hemen sonra port numaranızı acilen değiştirilmesini öneririm.

Aşağıdaki yöntemler ile hızlı şekilde varsayılan portu değiştirebilirsiniz:

1) SSHD Config Dosyasını Düzenleyin

Sunucunuza Putty veya Terminal aracılığıyla bağlandıktan sonra aşağıdaki komut ile SSHD konfigürasyon dosyasını açın:

yum install nano -y && nano /etc/ssh/sshd_config

Eğer nano komutu çalışmadıysa, öncelikle “yum install nano -y” ile programı kurabilirsiniz.

Açılan editörde aşağıdaki satırı bulun
#Port 22

Ve başındaki # işaretini silip port numarasını değiştirin. 2210 örnektir. Siz kendinize ait bir rakam yazabilirsiniz:

Port 2210

Ardından Ctrl+X ile çıkmaya çalışın. Sizden onay isteyecektir. Y’ye basın ve Enter’a basarak değişikliği kaydedin ve çıkış yapın.

2) Servisi yeniden başlatın:

sudo systemctl restart sshd.service

3) Kontrol edin:

Bu komut ile SSH portun değişip değişmediğini kontrol edin. Eğer  *:2210 (ya da girdiğiniz port) görünüyorsa sorun yok demektir:

ss -tnlp|grep ssh

Karşınıza gelmesi gereken ekran çıktısı:

LISTEN          0                128                              *:2210 *:*                                     users:((“sshd”,10783,3))
LISTEN          0               128                              :::2210 :::*                                     users:((“sshd”,10783,4))
Kategoriler
Opencart

centos sunucuda tar.gz oluşturma ve çıkartma

centos sunucu

Centos sunucunuzda bir klasörü .tar.gz olarak sıkıştırmak istiyorsanız aşağıdaki komutu kullanınız,

tar -zcvf tar-arsiv-ismi.tar.gz kaynak-klasor-ismi

Eğer tam tersi olarak, bir .tar.gz sıkıştırılmış dosyayı çıkartmak istiyorsanız aşağıdaki kodu kullanınız,

tar -zxvf tar-arsiv-ismi.tar.gz

Klasör izinlerini korumak için,

tar -pcvzf tar-arsiv-ismi.tar.gz kaynak-klasor-ismi

Tam tersi, çıkartmak için “c” parametresini “x” ile değiştirin. yani,

tar -pxvzf tar-arsiv-ismi.tar.gz
Kategoriler
İpuçlar Opencart

opencart 1.5.6.x için telefon doğrulaması nasıl yapılır?

Merhabalar,

Opencart üyelik sayfasında düzeltilmesi gereken bir sorundan bahsedeceğim. Üyelerimiz üye olurken, telefon numarası alanına 55555 yazıp geçebiliyor. Veya telefon numarasının başına “O” yazıyor ve “sıfır” gibi gözükmesini sağlıyor. Durum böyle olunca, kampanya için smsleriniz o müşteriye ulaşmıyor. Veya 0555naber45 şeklinde telefon numarası yazıp geçebiliyor. Bunun için yapmanız gereken ufak bir işlem var. Öncelikle bu yöntem opencart 1.5.6.4’te denenmiştir, diğer sürümlerde denenmemiştir.

Şu dosyayı açınız: catalog/controller/account/register.php ve aşağıdaki satırı bulun.

if ((utf8_strlen($this->request->post['telephone']) < 3) || (utf8_strlen($this->request->post['telephone']) > 32)) {
			$this->error['telephone'] = $this->language->get('error_telephone');
		}

Bu kodu, aşağıdaki kod ile değiştirin;

if ((utf8_strlen($this->request->post['telephone']) < 10) || (utf8_strlen($this->request->post['telephone']) > 11) || preg_match('/[^\d]/is', $this->request->post['telephone'])) {
			$this->error['telephone'] = $this->language->get('error_telephone');
		}

Bu sayede, 05554442233 gibi 0 ile başlayan telefon numarası yazabilirler. 0 olmadan da telefon numarasını yazabilirler fakat 555 gibi kısa numara yazamazlar. Harf yazamazlar. En az 10, en çok 11 adet rakam yazabilirler.

Aynı değişikliği, catalog/controller/checkout/register.php içinde yapınız.

3 ile 32 arasındaki varsayılan uzunluğu değiştirdiğimiz için, opencart dil dosyasındaki Türkçe dil çevirisini de değiştiriniz.

Kategoriler
Opencart

Opencart “company name” karakter uzunluğunu arttırma

Merhabalar,

Bir opencart siteniz var ise ve ülkemizdeki firma isimlerinin ticari ünvanlarının uzunluğu nedeniyle illaki sorun yaşadığınız oluyordur. Standartta 32 karakter olan Company Name girdisinin değerini phpmyadminden girerek düzeltebilirsiniz. Bunun için, phpmyadmin’i açınız, “order” tablosundaki, “payment_company” yapısını değiştir yapınız ve “Uzunluk/Değerler” değerini 128 yapınız. Değer aşağıdaki gibi olmalıdır.

İyi çalışmalar.

Kategoriler
İpuçlar Opencart

Seo Optimizasyonu Tarayıcı Önbellekleme

Merhabalar, bir çok web tasarımcısı sitelerinin seo açısından uyumlu olup olmadığını test etmek ister. Piyasada farklı test yöntemleri mevcut. Bu yöntemleri denediğimizde gözümüze çarpan bir faktör tarayıcı önbelleklemedir. Bu oldukça etkili bir faktördür. Sitenizi ziyaret eden kullanıcılar ziyaretleri sırasında site ile veri alışverişinde bulunur. Her sayfa yüklendiğinde bulunduğunuz makine biraz daha kotasından harcar. Çoğu site ağır resimler ve reklamlardan dolayı geç açılır. Bunlar kullanıcı açısından çok gözle görülür bir faktör olmasada arama motorları için oldukça hassas bir noktadır.

Sunucunuzun mod_deflate.c, mod_expires.c, mod_headers.c özelliği aktif ise bu işlemler gerçekleştirilebilir.

Tarayıcı Önbellekleme bize neler sağlar ?

  • Tarayıcı önbellekleme sitenizden yüklenen dosyaları ziyaretçilerin bilgisayarına kaydeder ve her defasında buradan çekerek sunucuyu yormaz.
  • Ziyaretçiler sitenizde daha hızlı gezinir.
  • Arama motorları sitenizi üst sıralara taşır.
  • Aylık transfer kotanızı minimuma indirger.

Tarayıcı Önbellekleme nasıl yapılır ?

Sitenizde bulunan .htaccess dosyanızı açarak içerisine verdiğim kodları ekleyin ve kaydedin.

# Enable GZIP 
<ifmodule mod_deflate.c> 
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript 
BrowserMatch ^Mozilla/4 gzip-only-text/html 
BrowserMatch ^Mozilla/4\.0[678] no-gzip 
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
</ifmodule>
# Expires Headers - 2678400s = 31 days 
<ifmodule mod_expires.c> 
  ExpiresActive On 
  ExpiresDefault "access plus 2678400 seconds" 
  ExpiresByType text/html "access plus 7200 seconds" 
  ExpiresByType image/gif "access plus 2678400 seconds" 
  ExpiresByType image/jpeg "access plus 2678400 seconds" 
  ExpiresByType image/png "access plus 2678400 seconds" 
  ExpiresByType text/css "access plus 750000 seconds" 
  ExpiresByType text/javascript "access plus 2678400 seconds" 
  ExpiresByType application/x-javascript "access plus 2678400 seconds" 
</ifmodule>
# Cache Headers 
<ifmodule mod_headers.c> 
  # Cache specified files for 31 days 
  <filesmatch "\.(ico|flv|jpg|jpeg|png|gif|css|swf)$"> 
  Header set Cache-Control "max-age=2678400, public" 
  </filesmatch> 
  # Cache HTML files for a couple hours 
  <filesmatch "\.(html|htm)$"> 
  Header set Cache-Control "max-age=7200, private, must-revalidate" 
  </filesmatch> 
  # Cache PDFs for a day 
  <filesmatch "\.(pdf)$"> 
  Header set Cache-Control "max-age=86400, public" 
  </filesmatch> 
  # Cache Javascripts for 31 days 
  <filesmatch "\.(js)$"> 
  Header set Cache-Control "max-age=2678400, private" 
  </filesmatch> 
</ifmodule>

Tarayıcı Önbelleklemenin dezavantajları nelerdir ?
Günümüzde birçok şeyde olduğu gibi tarayıcı önbelleklemede avantajlarının yanında bir takım dezavantajlar getirmektedir. Bu sitenin tasarımının güncellendiği halde eski dosyaları kullanan kullanıcıların yeni tasarımınızı uzun süre görememesi gibi olaylarla karşımıza çıkabilir.
Bunun önüne nasıl geçebiliriz diyorsanız yöntemler basit. Eğer sitenizi güncelliyorsanız süre yazan yere 1 seconds yazabilirsiniz. Bu her saniye cache yaptığı için en güncel halini gösterecektir. Yüklenen dosyanın ismini değiştirmekte başka bir yöntem fakat bence gereksiz bayağı bir uğraş verebilirsiniz. Özellikle include edilmiş bir dosya ise sizi oldukça uğraştırır.