Perfect Day'i WooCommerce'e bağlayın.
WooCommerce kullanıyor musunuz? İki yol var: yerel bağlantı eklentisi (önerilen, daha kolay) veya Webhook varyantı Kod parçacığı aracılığıyla. Her ikisi de aynı platforma yazıyor - sonuç aynı.
Önceden gerekli olanlar: Bir kere git genel hazırlık Bu işlem, bir kupon oluşturmayı, uygulama şifresini almayı ve webhook URL'sini sağlamayı içerir. Yaklaşık beş dakika sürer ve tüm mağaza sistemleri için geçerlidir.
Yöntem 1 — Yerel Bağlayıcı (önerilir, ~10 dk)
En kolay yol: WooCommerce için kendi WordPress eklentimizi geliştiriyoruz.
-
Bağlantı eklentisini yükleyin.
WooCommerce mağazanızın WordPress yönetim paneli → Eklentiler → Ekle. Eklentinin ZIP dosyasını indirin. „Mükemmel Gün Mağazası bağlantı parçası" Dosyayı yükleyin (dosyayı bizden alacaksınız - indirme bağlantısı destek ekibi aracılığıyla talep üzerine sağlanacaktır) ve etkinleştirin.
-
Eklentiyi yapılandırın
WP-Admin → Ayarlar → Perfect Day Connector. Girmek:
- Platform sunucusu:
https://plattform.deinperfectday.de - Kullanıcı adı + Uygulama şifresi hazırlıktan
Kaydetmek.
- Platform sunucusu:
-
Her ürün için kupon numarasını girin.
WP-Admin → Ürünler → Ürünü açın. Yan menü bloğunda „"Mükemmel Gün"" Kupon kimliğini girin (
15114vb.) ve ürünü kaydedin. -
Test siparişi
Siparişinizi mağazaya verin ve durumunu "tamamlandı" olarak ayarlayın. WP-Admin → Siparişler → Kontrol Et Not: „Oluşturulan Mükemmel Gün Kodları: 1". Sipariş, platformun arka ofisinde şu başlık altında görünecektir: Mükemmel Gün → Mağaza siparişleri, Müşteri marka e-postasını alır.
Yöntem 2 — Genel web kancası aracılığıyla (~15 dk)
Eğer bağlantı eklentisini kurmak istemiyorsanız (örneğin, çok eski bir WooCommerce sürümü kullanıyorsanız veya daha hafif bir kurulum tercih ediyorsanız), webhook'a küçük bir kod parçacığıyla erişebilirsiniz.
-
Ürün üzerinde özel bir alan olarak Kupon Kimliği
WP-Admin → Ürünler → Ürünü aç → Engelle „Kendi tarlalarımız" (Görünmüyorsa: sağ üstte, "Ekran Seçenekleri"ni seçin → "Özel Alanlar"ı etkinleştirin). Yeni alan:
- İsim:
pfd_kupon_kimliği - Değer:
15114(Platform kupon kodunuz)
„"Güncelle"ye tıklayın.
- İsim:
-
Alt temanın functions.php dosyasındaki kod parçası
Aşağıdaki kodu ekleyin
fonksiyonlar.phpEtkin alt temanızın. Kullanıcı adınızı ve uygulama şifrenizi işaretli alanlara girin.Kodun tamamını görüntüle — PHP · functions.php
add_action('woocommerce_order_status_completed', 'pfd_send_to_perfectday', 10, 1); function pfd_send_to_perfectday($order_id) { $order = wc_get_order($order_id); if (!$order) return; // İdempotans koruması: sipariş başına yalnızca bir kez if ($order->get_meta('_pfd_webhook_sent', true)) return; $items = array(); foreach ($order->get_items() as $item) { $product = $item->get_product(); if (!$product) continue; $coupon_id = get_post_meta($product->get_id(), 'pfd_coupon_id', true); if (empty($coupon_id)) continue; $items[] = array( 'coupon_id' => (int) $coupon_id, 'count' => (int) $item->get_quantity(), ); } if (empty($items)) return; $payload = array( 'shop_order_id' => (string) $order->get_order_number(), 'shop_type' => 'woocommerce', 'shop_domain' => parse_url(home_url(), PHP_URL_HOST), 'customer' => array( 'email' => $order->get_billing_email(), 'name' => trim($order->get_billing_first_name() . ' ' . $order->get_billing_last_name()), 'locale' => substr(get_locale(), 0, 2), ), 'items' => $items, 'order_total_cents' => (int) round($order->get_total() * 100), 'para birimi' => $order->get_currency(), 'ödeme tarihi' => $order->get_date_paid() ? $order->get_date_paid()->format('c') : current_time('c'), ); // ⬇ Değerlerinizi buraya girin ⬇ $username = 'KULLANICI ADINIZ'; $app_pwd = 'xxxx xxxx xxxx xxxx xxxx xxxx'; // ⬆ Değerlerinizi buraya girin ⬆ $response = wp_remote_post( 'https://plattform.deinperfectday.de/wp-json/perfectday/shop/webhook/order', array( 'headers' => array( 'Content-Type' => 'application/json', 'Authorization' => 'Basic ' . base64_encode($username . ':' . $app_pwd), ), 'body' => wp_json_encode($payload), 'timeout' => 15, ) ); if (!is_wp_error($response)) { $order->update_meta_data('_pfd_webhook_sent', '1'); } $order->add_order_note(sprintf( 'Mükemmel Gün: Webhook gönderildi (HTTP %d)', wp_remote_retrieve_response_code($response) )); $order->save(); } else { $order->add_order_note('Mükemmel Gün: Webhook başarısız oldu — ' . $response->get_error_message()); } } -
Kimlik bilgilerini güvenli bir şekilde saklayın.
Uygulama şifresinin doğrudan PHP kodunda olması ideal değil. Daha iyisi: aracılığıyla
wp-config.phpSabiti tanımlayın ve kod parçacığında ona referans verin.define('PFD_API_USER', 'your-name'); define('PFD_API_PASSWORD', 'xxxx xxxx xxxx xxxx xxxx xxxx'); // Kod parçacığında ise: // $username = PFD_API_USER; // $app_pwd = PFD_API_PASSWORD; -
Test siparişi
Siparişi verin, durumunu "tamamlandı" olarak ayarlayın, ardından WP-Admin'de siparişi açın ve alttaki istediğiniz seçeneği belirleyin. Notlar kontrol etmek:
Mükemmel Gün: Webhook gönderildi (HTTP 200)→ Her şey yolunda.
Sorun giderme.
Kod yürütülmeyecektir.
Kod parçası doğru temada mı (alt temada!)? Aksi takdirde, tema güncellemesinden sonra kaybolacaktır. Ayrıca: Kanca (hook). woocommerce_order_status_completed Bu kod yalnızca durum "tamamlandı" olarak değiştiğinde tetiklenir. Ödeme yönteminiz siparişleri doğrudan "işlemde" durumunda bırakıyorsa, kodu şu şekilde değiştirin... woocommerce_order_status_processing.
HTTP 403 — yasaklanmış kupon
O pfd_kupon_kimliği Özel alan, sağlayıcı hesabınıza ait olmayan bir kupona işaret ediyor. Lütfen platformun arka ofisinde kontrol edin. Kuponlar, Kimlik numarasının orada olup olmadığı.
HTTP 401 — kimlik doğrulaması gerekli
Yanlış kullanıcı adı (WordPress kullanıcı adı, e-posta adresi değil) veya yanlış uygulama şifresi, iptal edilmiş veya hatalı kopyalanmış.
Bunu sizin için biz mi kurmamızı tercih edersiniz?
WooCommerce en basit örnektir; genellikle kendiniz yönetebilirsiniz. Ancak yardıma ihtiyacınız olursa, ürün kupon kimliklerinizin eşleştirilmesi de dahil olmak üzere, bağlantı aracını sizin için kurup yapılandırabiliriz.
Hâlâ sorularınız var mı?
1. güzergah mı, 2. güzergah mı? Hangisini tercih etmeliyim?
Bu yöntem daha eski WooCommerce sürümlerinde de çalışır mı?
Mağaza bağlantısı kuruldu — peki şimdi ne olacak?
Webhook çalışmaya başladıktan sonra, tüm siparişler otomatik olarak arka ofisinizde görünecektir. Başka bir bağlantıya ihtiyacınız varsa, her ek mağaza birkaç dakika içinde kurulabilir.
Mağaza genel görünümüne git