یکی از راههای ترغیب مشتریان برای خرید مجدد محصولاتی که در گذشته آنها را خریداری کردهاند، نمایش آنها در پنل کاربریشان میباشد. با اجرای این کار، باعث میشود فروشتان افزایش پیدا کند. در این مقاله قصد داریم نحوه نمایش محصولات خریداری شده توسط کاربر در ووکامرس را به شما آموزش دهیم.
کد نمایش محصولات خریداری شده توسط مشتری در ووکامرس
اگر میخواهید همه محصولاتی که کاربر در فروشگاه شما خریداری کرده را در پنل کاربریش نمایش دهید، قطعه کد زیر کمک خواهد کرد تا این کار را به راحتی انجام دهید. این قطعه کد، یک کد کوتاه به نام [my_purchased_products] ایجاد خواهد کرد که به طور خودکار لیست تمام محصولاتی که کاربر تاکنون خریداری کرده را جمعآوری و در قالب محصولات نمایش میدهد.
نکته: برای اجرای این کد، میتوانید آن را در فایل functions.php پوسته فرزند قرار دهید یا از افزونه Code Snippets استفاده نمایید.
/**
* @snippet Display All Products Purchased by User via Shortcode - WooCommerce
* @author Rodolfo Melogli
* @compatible WooCommerce 3.6.3
*/
add_shortcode( 'my_purchased_products', 'tidaweb_products_bought_by_curr_user' );
function tidaweb_products_bought_by_curr_user() {
// GET CURR USER
$current_user = wp_get_current_user();
if ( 0 == $current_user->ID ) return;
// GET USER ORDERS (COMPLETED + PROCESSING)
$customer_orders = get_posts( array(
'numberposts' => -۱,
'meta_key' => '_customer_user',
'meta_value' => $current_user->ID,
'post_type' => wc_get_order_types(),
'post_status' => array_keys( wc_get_is_paid_statuses() ),
) );
// LOOP THROUGH ORDERS AND GET PRODUCT IDS
if ( ! $customer_orders ) return;
$product_ids = array();
foreach ( $customer_orders as $customer_order ) {
$order = wc_get_order( $customer_order->ID );
$items = $order->get_items();
foreach ( $items as $item ) {
$product_id = $item->get_product_id();
$product_ids[] = $product_id;
}
}
$product_ids = array_unique( $product_ids );
$product_ids_str = implode( ",", $product_ids );
// PASS PRODUCT IDS TO PRODUCTS SHORTCODE
if( !empty( $product_ids_str ) )
return do_shortcode("[products ids='$product_ids_str']");
else
return __('You have not purchased any products yet.', 'tidaweb');
}
در مقاله بالا ترفند نمایش محصولات خریداری شده توسط مشتری در ووکامرس آموزش داده شد. در صورتی که سؤالی در این زمینه دارید، میتوانید آن را از بخش دیدگاهها با ما در میان بگذارید. همچنین اگر به دنبال ترفندهای بیشتر هستید، به ترفند وردپرس مراجعه کنید.
منبع : Business Bloomer
سلام
ممنون مطلب خوبتون
الان بجای این کدی که نوشتید اگر بخواهیم تعداد محصولات براساس وضعیت آنها (تکمیل شده – لغو شده – درحال انجام) که هر کاربر خریداری کرده را نمایش بدیم چه کدی را باید بنوسیم؟
به این صورت که مثلا:
تعداد سفارش های تکمیل شده ۲
تعداد سفارش های لغو شده ۲
تعداد سفارش های درحال انجام ۵
سلام
ان شاء الله در آینده نزدیک، مطلبی در این باره منتشر میشه که دقیق پاسخ سوال شما رو میده.
موفق و پیروز باشید
سلام خسته نباشید، کاربر زمانی که محصول دانلودی رو میخره، بعد از خرید وارد یک صفحه میشه که همونجا باید دانلود کنه، اگر صفحه رو ببنده و دانلود نکنه چون وارد حساب کاربریش نمیشه باید از اول بخره تا دوباره به محصول دسترسی داشته باشه به خیلی ها اینو گفتم ولی کسی راهنمایی قشنگی نکرد، ممنون میشم بفرمایید دقیقا چه کارکنم
سلام دوست عزیز
باتوجه به اینکه کاربران داخل سایت شما ثبت نام نمیکنن، دو نکته را باید رعایت کنین ، چون ووکامرس لینکهای دانلودی رو با ایمیل کاربرانی که ثبت سفارش میکنن میسازه.
نکته اول : محدودیتی برای دانلود لینکها نباشه.
نکته دوم : لینکها را کوتاه کنین و از طریق پیامک براش ارسال کنین.
موفق و پیروز باشین
سلام وقت شما بخیر
برای نمایش محصولات خریداری شده توسط کاربر، بصورت کنار هم یا گردونه (صرف نظر از حالت نمایش قالب) چکار باید کرد؟
سلام کاربر عزیز
این کدی که در این مقاله قرار گرفته، محصولات خریداری شده توسط کاربر را محاسبه میکنه و در نهایت در کد کوتاه [products] نمایشش میده . شما میتونین در هر حالتی خواستین نمایشش بدین کافیه خط زیر را عوض کنین و با هر مدلی دوست داشتین نمایش بدین.
return do_shortcode("[products ids='$product_ids_str']");
ممنون فقط اگه محبت کنید همین کد و به حالتی تغییر بدین که فقط عنوان محصولات خریداری شده رو زیره هم نشون بده
سلام پیام عزیز
ممنون میشم درخواستت رو با بخش پشتیبانی در میون بذاری تا بتونن راهنماییت کنند.
سلامت و تندرست باشی
سلام ممنون
نمایش بدون عکس محصول رو بخوام باید چطوری فراخوانی کنم؟
پیام عزیز، این کد براساس کد کوتاه ووکامرس کار میکنه و پس از فراخوانی شناسه محصولات اونها رو در کد کوتاه
[products]
قرار میده. اگر بخوای نمایش محصولات را سفارشی سازی کنی، باید به جای کد کوتاه محصولات کد اختصاصی براش بنویسی 🙂سلام وقتتون بخیر
ممنون از مطلب مفیدتون
این کد رو تست کردم و اوکی بود ولی اگه کاربری محصولی نخریده باشه هیچی بهش نمایش داده نمیشه.
میتونید ۱ بخشی به کد اضافه کنید که اگه محصولی نخریده باشه بنویسه: شما محصولی خریداری نکردید؟
باتشکر
باسلام خدمت کاربر گرامی
قطعه کد بهروزرسانی شد.
سلام وقت بخیر. دوست عزیز من میخوام تو المنتور استفاده کنم راهنمایی میفرمایین . تشکر
سلام علی جان
شما میبایست قالب برگه حساب کاربری ووکامرس را با المنتور طراحی کنین و در هر جایی که از این برگه دوست دارین بلوک کد کوتاه بندازین و کد
[my_purchased_products]
را داخل اون قرار بدین.باتشکر
سلام
من میخوام براساس دسته بندی خاصی محصولات و نمایش بدم
مثلا دسته بندی فایل
سلام خدمت کاربر گرامی
کد کوتاه products را در قطعه کد موجود در مقاله بالا پیدا کرده و کد زیر را جایگزین کنید. به جای your_category ، نامک دستهبندی مورد نظر را وارد کنید.
[products ids='$product_ids_str' category='your_category']
موفق و پیروز باشید
سلام و درود
ما تو قسمت سفارشات ووکامرس تو حساب کاربری ، فقط شماره سفارش و تاریخ و وضعیت و نمایش رو داریم ولی از همه مهمتر یه گزینه عنوان فایلی که خریداری کردیم باید باشه که نیست (یعنی کاربر اگه چند تا سفارش داشته باشه نمیتونه متوجه بشه کدوم محصول رو خریده و حتما باید روی نمایش کلیک کنه که ببینه )
آیا میتونین راهنمایی کنین که چکار کنیم
با سپاس فراوان
سلام میثم جان
با استفاده از کد بالا میتونین کل محصولات خریداری شده کاربر رو یک جا بهش نمایش بدین. اگر باز هم مشکل داشتین میتونین تماس بگیرین تا راهنماییتون کنیم.
موفق و پیروز باشی