Kullanıcılar tarafından satın alınan tüm ürünler nasıl görüntülenir – Satın Alma Geçmişi
Adım 1: Müşteri geçmişini görüntülemek ve işlev gibi kullanıcı ayrıntılarını almak için bir işlev oluşturun ve geçerli kullanıcı ayrıntılarını aşağıdaki gibi alın: njengah_get_customer_purchase_history () işlev {) {) {) {)
// Geçerli kullanıcı nesnesini alın
$ current_user = wp_get_current_user ();
// Kullanıcının geçerli olup olmadığını kontrol edin
(0 == $ current_user-> id) tekrar;
} İşlevi wp_get_current_user () Kullanıcı nesnesini alır ve doğrudan geçerli kullanıcı kimliğini alan get_current_user_id () gibi işlevleri de kullanabilirsiniz. Adım 2: Bu adımda kullanıcı siparişini tamamlayın ve işleme alın Get_posts () işlevini kullanmamız ve ilk adımda aldığımız kullanıcı kimliğiyle ARGS’ye devam etmemiz gerekir ve bu durumda kullanıcı kimliği meta_value olarak devam edecektir. $ args. Bu yüzden get_post () işlevine vereceğimiz argümanlar yaparak başlıyoruz.
// $ args dizisi yap
$ args = dizi (
‘NumberPosts’ => -1,
‘Meta_key’ => ‘_ _privation_penggan’, ‘meta_value’ => $ current_user-> id,
‘post_type’ => wc_get_order_types (),
‘Post_status’ => array_keys (wc_get_is_paid_state ()),,
);
Bir argüman yaptıktan sonra, aşağıdaki parametreler olarak Get_Posts () işlevine $ args dizisine devam etmedik: $ customer_orders = get_posts ($ args); Bir sonraki adıma geçmeden önce, kodu 1. adım ve 2. adımda birleştiririz ve birleşik kod aşağıdaki gibi olmalıdır: njengah_get_customer_purchase_history () işlevi {)
// Geçerli kullanıcı nesnesini alın
$ current_user = wp_get_current_user ();
// Kullanıcının geçerli olup olmadığını kontrol edin
(0 == $ current_user-> id) tekrar;
// $ args dizisi yap
$ args = dizi (
‘NumberPosts’ => -1,
‘Meta_key’ => ‘_pegan_penggan _pegan_penggan’,
‘meta_value’ => $ current_user-> id,
‘post_type’ => wc_get_order_types (),
‘Post_status’ => array_keys (wc_get_is_paid_state ()),,
);
// Get_posts () için $ args işlevini verin
$ customer_orders = get_posts ($ args);
} Bu adımda, bir sonraki adımda bir ürün kimliği almak için tekrarlayacağımız bir çizgi olarak önceki müşterilerin tüm satın alma geçmişini aldık.
Adım 3: Müşteri siparişlerini tekrarlayın ve bu adımda görüntülenmeye hazır ürün kimliğini iade edin, önceki adımda aldığımız siparişleri tekrarlamamız ve diziyi ürün kimliğiyle geri yüklememiz gerekir. Bunu aşağıdaki kodu kullanarak foreach döngüsünü kullanarak yapabiliriz. // komutları tekrarlayın ve kimliği döndür
(! $ Customer_orders) tekrar;
$ ürün_id = array ();
Foreach ($ customer_order olarak $ customer_orders) {
$ sipariş = wc_get_order ($ customer_order-> id); $ item = $ sipariş-> get_items ();
foreach ($ öğe olarak $ öğeler) {
$ ürün_id = $ öğe-> get_product_id ();
$ ürün_id [] = $ id_product;
}
}
Dönüş $ ürün_id; Kodun tamamını aşağıdaki gibi olması için 1. Adım, Adım 2 ve Adım 3’teki kodu birleştirebiliriz:
Njengah_get_customer_purchase_history () işlevi {
// Geçerli kullanıcı nesnesini alın
$ current_user = wp_get_current_user ();
// Kullanıcının geçerli olup olmadığını kontrol edin
(0 == $ current_user-> id) tekrar;
// $ args dizisi yap
$ args = dizi (
‘NumberPosts’ => -1,
‘Meta_key’ => ‘_pegan_penggan _pegan_penggan’,
‘meta_value’ => $ current_user-> id,
‘post_type’ => wc_get_order_types (),
‘Post_status’ => array_keys (wc_get_is_paid_state ()),,
);
// Get_posts () için $ args işlevini verin
$ customer_orders = get_posts ($ args);
// komutları tekrarlayın ve kimliği döndür
(! $ Customer_orders) tekrar;
$ ürün_id = array ();
Foreach ($ customer_order olarak $ customer_orders) {
$ sipariş = wc_get_order ($ customer_order-> id);
$ öğe = $ sipariş-> get_items ();
foreach ($ öğe olarak $ öğeler) {
$ ürün_id = $ öğe-> get_product_id ();
$ ürün_id [] = $ id_product;
}
}
Dönüş $ ürün_id;
} Adım 4: Bu adımda işlevin dönüşünü test edin Bu adımda verilerin print_r () işlevini aşağıdaki gibi kullanarak 3. adımda işlevden görüntülenip görüntüleyeceğini kontrol edebiliriz:
print_r (njengah_get_customer_purchase_history ()); Tüm adımları doğru şekilde takip ederseniz, WP_head Action Hook’a veri ekranını eklediğim aşağıdaki resimde gösterildiği gibi görüntülenen verileri göreceksiniz. Artık bu verileri kısa bir kodda veya içinde kullanabilirsiniz. İstediğiniz yerde bir satın alma geçmişi görüntülemek için temanızı veya eklentinizi geliştirin. Sonuç Bu yazıda Woocommerce’de kullanıcılar tarafından satın alınan ürünlerin nasıl görüntüleneceğini açıkladım. Bu ideal kodun kullanımı, geçerli sipariş ürünü daha önce sipariş edilen ürünle karşılaştırmak istediğiniz herhangi bir mantıkta olabilir. Önceki siparişlere dayalı indirim tahsisi veya çapraz satış ve satışlar da dahil olmak üzere çoğu pratik uygulamada yükseldi.
Benzer makaleler
WordPress sayfasını yenilerken nasıl yeniden yönlendirilir »PHP Yenileme Sayfasının Tespiti
Woocommerce’de mevcut ürün kategorisinin adını nasıl alabilirim
WordPress’e girilen kullanıcı bilgileri nasıl alınır
Ürünleri WooCommerce’de nasıl gizılır veya kategorilere veya rollere göre ürünler nasıl gizlenir
WordPress’e girmiyorsa kullanıcıyı nasıl yönlendirir »sayfa aktarımı
Eklenti olmadan programlanan WordPress yönetici menü öğesi nasıl silinir
Wooocommerce müşterileri için yönetici çubuğu nasıl gizlenir veya kullanıcının rolüne göre
Bir eklenti kullanmadan WordPress’te nasıl sayfalandırma numarası yapılır
Wooocommerce’deki dükkana bağlantıyı nasıl değiştirir
WooCommerce Oturum Açma Onay olmadan: “Dışarı çıkmak istediğinizden emin misiniz?”
WordPress’teki geçerli kullanıcının rolünü ve görünümün rolünü nasıl alabilirim, WordPress sayfasının eklenti olmadan nasıl yönlendirilir?
Eklentinin WordPress’te aktif olup olmadığını nasıl kontrol edilir [3 yol]
WordPress’e yan çubuk nasıl eklenir »Ana adım için adım adım kılavuz
Bir eklenti kullanmadan WordPress’e başarılı bir şekilde giriş yaptıktan sonra kullanıcı nasıl yönlendirilir
WordPress temasına bir kenar çubuğu nasıl kaydedilir »Adım adım [Örnek Başlık Widget]
Wooocommerce’a giriş yaptıktan sonra sepete nasıl yönlendirilir
Kullanıcının WordPress’e girip girmediğini nasıl kontrol edilir
Wooocommerce’de stok kullanılabilirliği metnini nasıl gösterilir »Stock & Out’ta