Kurulum / Güncelleme

Yazılımı aşağıdaki özellikleri sunan herhangi bir sunucuya kurabilirsiniz. Bu bileşenler, Türkiyede hizmet veren sunucu firmalarının tamamına yakınında hazır kurulu olarak gelir.

– PHP v5.3 ve üzeri
– Ioncube v4.4 ve üzeri
– CURL
– MySQL
– GD Library v2 (+TTF Support)
– SOAP Ext.

Satışa, detaylara girmeden hızlı bir şekilde başlayabilmeniz için,

1. Genel ayarlar kısmından site başlığınızı ve logo dosyanızı girin. Sonra aktif şablon dizininden dilediğiniz şablon seçimini yapabilirsiniz.
2. Ayarlar altındaki e-posta ayarları kısmına gelin ve e-posta bilgilerinizi tanımlayın. Bu bilgilerden emin değilseniz, sunucu (hosting) yöneticinizden destek alabilirsiniz.
3. Artık ürün yönetiminden ürün girmeye başlayabilirsiniz. Öncelikle ürün yönetimi altındaki kategoriler yönetiminden yeni bir kategori ekleyin.
4. Sonra marka yönetiminden yeni bir marka ekleyin.
5. Ürünleri girmeye başlayabilirsiniz. Ürün yönetiminden yeni bir ürün girin. Ürünün sitede gözükebilmesi için, aktif olması, kategori ve markasının girilmiş olması gerekmektedir.
6. Banka yönetimi altından, kurulumu yapılmamış banka varsa, yeni ekle kısmına gelip “Hazır Kurulumlar” kısmından, sanal pos/banka girişlerimizi yapabilirsiniz.

Bu problemin iki ana nedeni olabilir.

– Büyük olasilikla conf.php’e serial yanlis girilmistir. Serial numaranızı serial@shopphp.net adresinden (Yeni Serial başlığı ile domain adı ve IP bilginizi göndererek) tekrar isteyin.

– Sunucunuzda ioncube loader dosyalar olmayabilir veya eski sürüm olabilir. Sunucu yöneticinize ioncube loader dosyalarının v4 ve üzeri olması gerektiğini bildirin.

Hayır, güncelleme sırasında veri kaybı yaşamayacaksınız.

1. Doc/sql.txt dosyasını bir editörle açın.
2. Dosya içeriğinde
ENGINE=InnoDB
olan kısımları
ENGINE=MyISAM
olarak güncelleyin. (find / replace all)
3. Normal kurulum adımlarına devam edebilirsiniz.

Zip dosyasinda gelen SQL dosyasini phpMyAdmin gibi bir veritabanı yöneticisi ile dosya olarak upload ederseniz oluşan encoding problemlerinden dolayı Turkce karakter problemleri yaşayabilirsiniz. Bu duruda veritabanini silip, SQL i query olarak (tüm SQL texti copy yapip SQL query ekranina paste edip) calistirmaniz durumunda herhangi bir karakter problemi olmayacaktır.
Ana dizinde .htaccess dosyası olmayabilir veya sunucunuzda mod_rewrite ext. yüklü olmayabilir. Yönetim paneli -> SEO Ayarlarından seo url desteğini kapatın.

Form güvenlik kontrol kelimesi (captcha) desteği için sunucuda GD Library 2, TTF Font desteği ile kurulu olması gerekmektedir.

Hosting yönetim panelinden “şifre korumalı klasörler” bolümünden /secure klasörünü şifreleyebilirsiniz.

Cpanel ile dizin şifreleme :
https://www.youtube.com/watch?v=VycMyPLAO6U

Plesk panel ile dizin şifreleme :
https://www.youtube.com/watch?v=nWCPMsb5_BE

Direct Admin ile dizin şifreme :
https://www.youtube.com/watch?v=1rlCGugW390

/secure dizinindeki tüm dosyalara erişimin, sunucu tarafından kısıtlanması güvenliğinizi arttıracaktır.

SSL’i kurduktan sonra https serverin http ile ayni dizine map ettigine emin oldun. Bir problem yoksa https://siteadresiniz yazdiktan sonra site normal bir sekilde acilacaktir. Site ayarlarindan “https aktif” secenegini isaretleyerek odeme kisminda SSL’i kullanabilirsiniz.
SSL kurulumu yaptıktan sonra Yönetim Paneli > Site Ayarları bölümünden “Https Aktif” bölümünü işaretlemememiz yeterli. Sonra yazılı sadece gerekli kısımlarda (Login, Satın alma adımları vs.) siteyi https bağlantısına yönlendirecektir. Gereksiz kısımlarda SSL protokolünün yavaş olmasından dolayı site http ile yanıt verecektir.
1. Gönderilen zip dosyasını FTP üzerinden /include/3rdparty/ klasörü içerisine açın.
2. Yönetim paneli, chat ayarları kısmından modülü aktif edin. Online ve offline resimleri bu kısımdan set edebilirsiniz.
3. FTP üzerinden şablon dizininiz içerisine girin ve temp.php içerisinde, canlı destek resminin gözükmesi istediğiniz yere

<?=canlıDestekResim()?>

yazısını ekleyin.
Dilerseniz, </body> öncesine

<div style=”position:fixed; right:15px; bottom:15px;”><?=canliDestekResim()?></div>

benzeri bir kod ekleyerek, sağ altta sabit kalmasını sağlayabilirsiniz.

ShopPHP kurulumlarından tüm standart şablonlar (ve sipariş verildiyse Premium şablon) hazır kurulu olarak gelir. Yönetim panelindeki , site ayarları kısmındaki “Aktif Şablon Dizini” bölümünden, yüklü olan şablonlar arasında geçiş yapabilirsiniz.
Eğer sunucu hizmetini bizden aldıysanız, SSL kurulumu ilk talebinizden sonra bizim tarafımızdan yapılır. Sunucu hizmetiniz farklı bir yerdeyse, SSL kurulumu ilgili firmadan talep edebiliriz. SSL kurulumundan sonra yönetim panelindeki ayarlar kısmından “HTTPs Akfit” seçeneğini işaretlememiz gerekiyor. Su adım sonrasında site, gerekli sayfalarda (form submit olan) SSL protokolüne yönlendirilecektir.
Güncelleme sırasında

MYSQL ÇIKTISI: [1]#NNNN – Duplicate column name ‘XXXX’

gibi bir hata geliyorsa, bu güncelleme satırı sizin veritabanınızda zaten yapılmış demektir. İlgili SQL dosyası daha önce çalıştırılmış olabilir. Hata olan satırı ve önceki satırları silip, SQL ‘i çalıştırmaya devam edin. Son satır çalışana kadar bu adım uygulanmalıdır.

1. FTP de include/conf.php dosyasından $serial satırından alabilirsiniz.
2. Yönetici paneli ana ekran (dashboard) ve genel ayarlar panelinin en üst satırında serial no bilginizi görebilirsiniz.
Siteyi kurduktan sonra images klasoru altindaki *tum klasorlere* ve *ana dizindeki tüm XML dosyalarina* yazma hakkı (Chmod 777) vermeniz gerekiyor.

v2.8  ve Öncesi
1.
include/conf.php dosyasında $aktifTemplateDizin ‘i olarak s-yellow bilgisini set edin.
2. include/conf.php dosyasında $siteTipi ayarını TEKURUN olarak set edin.

v2.9 ve Sonrası
1.
Yönetim panelinden aktif site şablonu olarak s-yellow’u seçin

Ürün yönetiminde girdiğiniz zaman alanlara başlangıç ve bitiş tarihi gibi yeni fieldlar eklenmiş olacaktır. Ürünler ilgili şablonda, başlangıç ve bitiş tarihinin uygunluğuna göre öncelik sırası ile yayınlanacaktır. Stoğu kalmayan ürün listelenmez. Listelenmeye uygun birden fazla ürün olması durumunda önceliği yüksek olan ana ürün bölümünde, diğer ürünler sağ blokta “Günün Diğer Ürünleri” başlığı altında listelenir.

v2.8  ve Öncesi
1.
include/conf.php dosyasında $aktifTemplateDizin ‘i olarak mgroup bilgisini set edin.
2. include/conf.php dosyasında $siteTipi ayarını GRUPSATIS olarak set edin.

v2.9 ve Sonrası
1.
Yönetim panelinden aktif site şablonu olarak mgroup’u seçin

Ürün yönetiminde girdiğiniz zaman alanlara kod doğrulaması yapabilecek kullanıcı,başlangıç ve bitiş tarihi gibi yeni fieldlar eklenmiş olacaktır. Ürünler ilgili şablonda, başlangıç ve bitiş tarihinin uygunluğuna göre öncelik sırası ile yayınlanacaktır. Stoğu kalmayan ürün listelenmez. Listelenmeye uygun birden fazla ürün olması durumunda önceliği yüksek olan ana ürün bölümünde, diğer ürünler sağ blokta “Günün Diğer Ürünleri” başlığı altında listelenir.

Ürün yönetimi ana başlığı altında “Grup Ürün Kupon Girişleri” ve “Grup Ürün Kupon Satışları” başlıkları açılmış olacaktır. Bu paneller üzerinden ürünler ile gönderilebilecek kupon girişlerini yapabilir ve satışların detaylarını takip edebilirsiniz.

Kuponlar, ilgili ürünün minimum satış sayısına ulaştıktan sonra kullanıcılara gönderilmeye başlanır. Ürün girişinde “Kod Doğrulaması Yapabilecek Kullanıcı” bilgisi seçildiyse bu kullanıcının üye menüsüne “Kupon Onayla” başlığı eklenir. Kullanıcı bu bölümden gelen müşterilerinin kuponlarını onaylayabilir.

Bu özellik sadece v3.2 ve üzeri sürümlerde çalışmaktadır.

/secure/s.php dosyasını açın.

include(‘include/all.php’);

satırından sonra

$siteTipi == ‘GRUPSATIS’;

satırını ekleyin. Yönetim panelinde grup kupon satışı alanları açık hale gelecektir. Bu işlemden sonra eğer bir ürüne kupon tanımlandıysa, ilgili kupon satış sonrası kullanıcıya gönderilecektir. 

v2.8  ve Öncesi
1.
include/conf.php dosyasında $aktifTemplateDizin ‘i olarak p-brown bilgisini set edin.
2. include/conf.php dosyasında $siteTipi ayarını OZELSATIS olarak set edin.

v2.9 ve Sonrası
1.
Yönetim panelinden aktif site şablonu olarak p-brown’u seçin.

Marka yönetimine girdiğiniz zaman “Marka Listeleme Başlangıç Tarihi”, “Marka Listeleme Bitiş Tarihi”, “Liste Resim” gibi fieldlar gözükmeye başlayacaktır. Girilen markalar, liste resimleri ile tarih uygunluğuna göre ve öncelik sırası baz alınarak ana sayfada listelenir.

Üst menüdeki kategoriler listelenmektedir. İçerisinde aktif bir ürün ve/veya marka olmayan kategoriler listelenmez.

Bu durumun iki nedeni olabilir.

1. Yeni sunucunuzda IP adresi değiştiğinden yeni serial numarası almanız gerekiyor. serial@shopphp.net adresinden yeni serial talep edebiliriniz.
2. Veritabanı bulunamadı (‘xxx_shopphp.siteConfig’ doesn’t exist) hatası alıyorsanız, veritabanı kurulmamış veya kurulan veritabanı eski sunucu tarafından tüm tablo isimleri küçük harfle güncellenmiş olabilir. Genelde windows sunucularda veritabanı isimleri otomatil olarak küçük harfe çevrilir. Veritabanı isimleri eski haline getirmek için PHPMyAdmin gibi bir yönetici ile aşağıdaki sorguyu çalıştırın.

RENAME TABLE `alarmliste`  TO `alarmListe` ;
RENAME TABLE `anketcevap`  TO `anketCevap`  ;
RENAME TABLE `anketip`  TO `anketIP` ;
RENAME TABLE `anketsoru`  TO `anketSoru` ;
RENAME TABLE `arizabildirim`  TO `arizaBildirim` ;
RENAME TABLE `arizadurum`  TO `arizaDurum` ;
RENAME TABLE `arizamesaj` TO `arizaMesaj` ;
RENAME TABLE `bankahavale`  TO `bankaHavale` ;
RENAME TABLE `bankahavalebildirim`  TO `bankaHavaleBildirim` ;
RENAME TABLE `bankavade`  TO `bankaVade` ;
RENAME TABLE `banneryonetim`  TO `bannerYonetim` ;
RENAME TABLE `gittigidiyorcat`  TO `gittiGidiyorCat` ;
RENAME TABLE `kampanyabanner`  TO `kampanyaBanner` ;
RENAME TABLE `kampanyabannerconfig`  TO `kampanyaBannerConfig`  ;
RENAME TABLE `kampanyajsbanner` TO `kampanyaJSBanner` ;
RENAME TABLE `kampanyalog`  TO `kampanyaLog` ;
RENAME TABLE `kargobolge`  TO `kargoBolge`  ;
RENAME TABLE `kargodesi` TO `kargoDesi` ;
RENAME TABLE `kargosehir` TO `kargoSehir` ;
RENAME TABLE `odemedurum`  TO `odemeDurum` ;
RENAME TABLE `pctoplama`  TO `pcToplama` ;
RENAME TABLE `sablonemail`  TO `sablonEmail` ;
RENAME TABLE `sablonsms`  TO `sablonSMS` ;
RENAME TABLE `siteconfig`  TO `siteConfig` ;
RENAME TABLE `stats_ip`  TO `stats_IP` ;
RENAME TABLE `urunxml`  TO `urunXML` ;
RENAME TABLE `urunyorum`  TO `urunYorum` ;
RENAME TABLE `usergroups`  TO `userGroups` ;
RENAME TABLE `usergroupmembers`  TO `userGroupMembers` ;
RENAME TABLE `userlog`  TO `userLog` ;

Bunun birkaç nedenir olabilr.

1. Sunucunuza GD Library v2 yüklü olmayabilir. Bunu sunucunuza danışın.
2. Images/cache dizini olmayabilir veya bu dizine yazma hakkı vermemiş olabilirsiniz. Bu dizine yazma hakkı verebilir (CHMOD 777), veya genel ayarlardan (v3.5 ve üzerinde) resim boyutlandırma seçeneği olarak “Direkt Boyutlandırma” seçeneğini işaretleyebilirsiniz.
3. Yönetim panelinde lazy load aktif işaretliyse, şablonunuz lazyload JS için uygun olmayabilir. Bu seçeneği pasif edin ve ayarlar kısmından cache’i temizleyip tekrar kontrol edin.

ShopPHP v3.4 sürümünden itibaren, yönetim paneli > Genel Ayarlar kısmından kullanılacak Resim Boyutlandırma (resize) modülünü set edebilirsiniz. Bu seçeneklerden Direkt Boyutlandırma en çok kaynak harcayan modüldür. Bu sadece PHPThumb veya TimThumb desteklenmeyen sunucularda aktif edilmelidir. Tavsiye ettiğimiz modül PHPThumb‘dır.
Sunucu MySQL ayar dosyası my.ini’den STRICT_TRANS_TABLES satırının silinmesi veya pasif edilmesi gerekiyor.
1. Öncelikle taşımak istediğiniz sunucu özelliklerinin, ShopPHP asgari gereksinimlerine sahip olup olmadığını kontrol edin. (SSS)
2. Tüm dosyaları ve veri tabanını yeni sunucuya kopyalayın. /secure/bayiXML klasörüne, Images/ altındaki tüm klasörlere ve ana dizindeki XML uzantılı dosyalara yazma hakkı verin.
3. Kopyalanan yeni veri tabanı bilgilerini include/conf.php dosyasında düzenleyin.
4. Son işlem include/conf.php dosyasındaki serial no değişmesi gerekiyor. serial@shopphp.net adresinden yeni serial numaranızı talep edebilirsiniz.

Her zaman, en düşük standart paket ücretinin %25 tutarını ödeyerek, bizden tekrar kurulum, güncelleme ve/veya sunucu taşıma hizmeti alabilirsiniz.

Genel kargo giriş bilgileri için aşağıdaki bağlantıyı inceleyebilirsiniz.

http://www.shopphp.net/blog.php?blogID=44

Kargo API entegrasyonu yapmak için;

1. Kargo > Kargo Firmaları panelinden ilgili Kargo Firmasının adını girin.
2. Kargo > Kargo Entegrasyon paneline ilgili kargo firmasına ait girişleri yapın ve bu kargo firmasına ait girdiğiniz firmayı seçin.

Artık “Gelen Siparişler” panelinde, “Gönderilen Kargo Firması” kısmında bu firmayı seçtiğiniz zaman, yeni bir form açılacak ve kargo firmasının extra talep ettiği bilgiler gelecek. Bu bilgileri girip, yeni açılan paneldek “Gönder” tuşuna tıkladığınızda, kargo bilgileri anlık olarak kargo firmasına iletilecek, ve sonuç gerçek zamanlı olarak ekrana yazılacaktır.

Bu girişten sonra, kullanıcılar, sipariş takip bölümnünden anlık olarak kargolarını takip edebilir.

Aras Kargo Barkod Desteği :
Aras Kargo API entegrasyonunda, Kargo Barkod yazdırma desteği bulunaktadır. Bu barkod sipariş bilgileriniz submit ettikten kısa bir süre sonra oluşur. Oluşlan bu barkod, sipariş detaylarına girdiğinizde, sepet altında otomatik eklenmiş olacaktır.

Otomatik Sipariş Durumu Güncelleme :
Kargo entegrasyonlarından bazılarında otomatik sipariş durumu güncelleme desteği vardır. Ana dizinde bulunan ilgili kargo cron-<kargo firma adı>.php dosyasını, sunucu cron job servisinize (ör: 15dk’da bir kontrol) ekletip, siparişi tamamlanan kargoların, otomatik olarak sipariş durumunun güncellenmesini sağlayabilirsiniz.

Ör : http://<domain-adınız>/cron-surat.php

v4.6 sürümü ile cron desteği eklenen kargo API entegrasyonları :

Sürat Kargo : /cron-surat.php
MNG Kargo : /cron-mng.php
Aras Kargo : /cron-aras.php

Döviz bilgilerinin 3 saatte bir güncellenebilmesi için, sunucu yöneticinizden “allow_url_fopen” değerinin açık olması talep etmemiz gerekiyor.
Bu include/conf.php dosyasında bulunan veri tabanı kullanıcı adı, veri tabanı şifre ve/veya veri tabanı adı bilgilerinden biri veya daha fazlasında hata olmasından alınır. İlgili dosyada aşağıdaki satırlardaki girişleri, sunucu yöneticimize danışarak güncelleyelim.

mysql_connect(‘<veri tabanı sunucusu>‘,’<veri tabanı kullanıcı adı>‘,’<veri tabanı şifre>‘);
mysql_select_db(‘<veri tabanı adı>‘,$baglanti);

v4.7 sürümünden itibaren 1. ve 2. satırdaki fonksiyonların başında my_ değeri eklenmiş (ör : my_mysql_connect) olabilir. İşlevleri aynıdır.

IP adresimiz değiştikten sonra serial no değerimizin güncellenmesi gerekiyor. Bunun için serial@shopphp.net adresi boş bir mail atın. Ne yapmanız gerektiği otomatik olarak mail adresinize gelecek.
1. Ayarlar kısmından cache seçimini database cache olarak set edin.
2. Ayarlar kısmından resim boyutlandırma olarak PHPThumb’ı seçin. (Images/cache klasörüne yazma hakkı CHMOD777 verdiğimizi kontrol edelim.)
3. Ayarlar kısmından canlı istatistiği pasif edin.
4. Belirli aralıklara, Yöentim Menü > Teknik İşlemler > Veritabanı optimize et ve onar seçeneklerini çalıştıralım.