
Geçenlerde Opencart kullanırken sitenin aşırı yavaşladığını fark ettim. Zaten opencartı kurduğumdan beri hiç beğenmedim. En sonuda tüm verileri Wordpress Woocommerce altyapısına taşımaya karar verdim. Bunun için phpde ufak bir migration yazdım.
Buradaki dosyalar açık kaynak olup istediğiniz gibi geliştirebilirsiniz.
Denenen Sürüm: 1.5.x
* Ana kategorileri çeker.
* Alt kategorileri çeker.
* Ürünleri çeker.
* Ürünlerin fotoğraflarını çeker.
* Ürün bilgilerini çeker.
* Ürün etiketlerini çeker.
* Ürüne eklenmiş olan tüm kategorileri çeker.
Genelde ürünleri elden sattığımız için müşterileri ve eski siparişleri çekmek ayrı bir kodlamaya yapmadım. Yazdığım kodlardan yola çıkarak kolayca müşteri ve siparişleride sisteme çekebilirsiniz.
Eğer taşıma işlemini sunucuda veya bilgisayarınızda yapacaksınız composer'in kurulu olduğundan emin olunuz.
Adım 1
Bu linkten woocommerce api kütüphanesini indiriyoruz. Github sayfasında zaten nasıl kullanıldığı anlatılıyor. Composerla gerekli dosyaları indiriyoruz.
Eğer vps/vds sunucunuz varsa ssh ile composeri direkt sunucuda kullanabilirsiniz. Veya localde indirip sunucuya atabilirsiniz. Size kalmış.
Adım 2
https://github.com/atakanuludag/open...erce-migration
(Repoya yıldız verirseniz sevinirim)
Yukarıda bulunan linkten gerekli migration dosyalarını indiriyoruz. 1. adımda indirdiğiniz dosyanın klasör adını wc-api-php yapalım ve burada indirdiğiniz klasörün içine atalım. (Composer install ile gerekli dosyaları indirmeyi unutmayalım)
Adım 3
Wordpress panelinde WooCommerce->Ayarlar->API yoluna gidelim.
Buradaki "REST API etkinleştir" seçeneği aktif değilse aktifleştirelim. Ardından "Anahtarlar/Uygulamalar" sekmesine gelip "Anahtar Ekle" butonuna basalım.
Açıklama: Migration
Kullanıcı: Super admin olan kullanıcıyı seçin
İzinler: Oku/Yaz
şeklinde Api anahtarı oluşturalım. Gelen ekrandan "Tüketici anahtarı" ve "Tüketici gizli anahtarı" keylerini bir yere not edelim.
Adım 4
Wordpress->Ürünler->Nitelikler yoluna giderek, Üreticiler adında yeni bir nitelik oluşturalım.
(Opencart da bulunan üreticiler için)
Adım 5
2. adımda indirdiğiniz dosyalardaki config.php dosyasını açıp $wpUrl, $token ve $tokenSecret bölümlerini değiştirin.
Adım 6
Opencart fotoğraf klasöründe htaccess koruması olduğu için fotoğrafları çekerken hata alacaksınız. Bu nedenle opencartın kurulu olduğunu dizindeki image/data yolunda bulunan .htaccess dosyasının ismini .htaccessx olarak değiştirin.
Adım 7
Dosyaları şu şekilde çalıştırın;
ana-kategori-olustur.php
alt-kategori-olustur.php
Bu ikisinden sonra calistir.php'yi çalıştırırak "İşleme başla" butonuna basdığınız taktirde ürünleri sisteme teker teker ekleyecektir. İsterseniz cronjobla sadece urun.php dosyasını çalıştırarak da migration yapabilirsiniz.
urun.php?count=xx
xx kısmına opencart sitenizde bulunan toplam ürün adetini yazmanız gerekir.
Migration WC api ile yapıldığı için örnek olarak ürünlerin eklenme tarihleri apide çalışmıyor. Bu nedenle wp_update_post metodu kullanıldı. Yine ürün var mı yok mu diye arama yaparken meta_keye göre arama yapılamıyor. Bunun içinde WP_Query kullanıldı.
Buradaki tüm dosyalar size örnek olması amacıyla paylaşıldı
Bu konuda da bir çalışma gerçekleştirmeniz mümkün mü? Çok kişinin hayır duasını alırsınız eminim
