• 19-04-2018, 11:21:32
    #1
    Arkadaşlar birçok pm geliyor. Eğer hata alıyorsanız Opencart sürümü, php sürüm vs. uyumsuzluğu olabilir. Çünkü malum seneler önce yazıldı ve siteyi aceleyle taşımam gerektiği için kod kalitesi iyi değil. Uygulama biçiminide elimden geldiğince açıklayıcı yazmaya çalıştım. Freelance işlere vs. baktığım içinde özel mesajlara vakit ayırıp bakamıyorum. Eğer kod bilginiz varsa düzenleyerek kendinize uygun hale getirebilirsiniz.


    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ı
  • 19-04-2018, 13:46:37
    #2
    Ö.M Bakarmısınız Hocam.
  • 28-02-2019, 18:12:28
    #3
    @aTKn94; hocam peki WooCommerce'deki ürünleri Opencart'a nasıl aktarabiliriz?
  • 28-02-2019, 21:36:19
    #4
    kodak adlı üyeden alıntı: mesajı görüntüle
    @aTKn94; hocam peki WooCommerce'deki ürünleri Opencart'a nasıl aktarabiliriz?
    Woocommerce’den opencart’a aktarmayla alakalı bir çalışmam olmadı😄 opencart tarafında eklentiler olabilir belki
  • 01-03-2019, 15:15:17
    #5
    aTKn94 adlı üyeden alıntı: mesajı görüntüle
    Woocommerce’den opencart’a aktarmayla alakalı bir çalışmam olmadı😄 opencart tarafında eklentiler olabilir belki
    Vallaha yok hocam hiç, kafayı sıyırdım biraz 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
  • 29-04-2020, 16:48:33
    #6
    Ben yapılacakları çok iyi anlamadım. Ama video veya görsel var mı? Teşekkürler...
  • 01-05-2020, 03:46:42
    #7
    yakutlu adlı üyeden alıntı: mesajı görüntüle
    Ben yapılacakları çok iyi anlamadım. Ama video veya görsel var mı? Teşekkürler...
    Maalesef video ya görsel yok. Anlatımı da gayet detaylı anlatmaya çalıştım. Anlamadığınız nokta nedir?
  • 11-10-2021, 09:59:40
    #8
    Hocam ellerinize sağlık öncelikle, ben şurada takıldım arkadaşlar böyle bir hataya rastlayan var mı acaba ? Php bilgim pek yok ilk verdiği hatada vendor klasörünü wc-api-php klasörü içine taşıdım sonrasında farklı bir hata verdi.
    SQLSTATE[HY000] [2002] No such file or directory
    Fatal error: Uncaught Error: Call to a member function query() on null in /Users/abdullah/Desktop/opencart-to-woocommerce-migration/main-category-install.php:27
    Stack trace:
    #0 {main}
    thrown in /Users/abdullah/Desktop/opencart-to-woocommerce-migration/main-category-install.php on line 27
  • 17-10-2021, 18:27:56
    #9
    JeaNLouP adlı üyeden alıntı: mesajı görüntüle
    Hocam ellerinize sağlık öncelikle, ben şurada takıldım arkadaşlar böyle bir hataya rastlayan var mı acaba ? Php bilgim pek yok ilk verdiği hatada vendor klasörünü wc-api-php klasörü içine taşıdım sonrasında farklı bir hata verdi.
    SQLSTATE[HY000] [2002] No such file or directory
    Fatal error: Uncaught Error: Call to a member function query() on null in /Users/abdullah/Desktop/opencart-to-woocommerce-migration/main-category-install.php:27
    Stack trace:
    #0 {main}
    thrown in /Users/abdullah/Desktop/opencart-to-woocommerce-migration/main-category-install.php on line 27
    Hocam composer ile gerekli paketleri indirmemişsiniz.