پرداخت نسیه دوره‌های LearnPress وردپرس

افزونه لرن‌پرس (LearnPress) یکی از بهترین افزونه‌های وردپرسی برای ایجاد دوره‌های آموزشی آنلاین هست که امکانات مناسبی در اختیار مدیر یا وب‌مستر سایت قرار میده. ولی در این میان هنوز امکان پرداخت نسیه یا قسطی دوره به طور مستقیم یا از طریق افزونه‌های جانبی LearnPress مهیا نشده. به همین خاطر در ادامه یک راهکار عملی مناسب برای حل رفع این کمبود را با شما به اشتراک میذارم.

افزونه‌های مورد نیاز

  • Woocommerce
  • Woocommerce Deposits
  • Cool Integration for LearnPress & WooCommerce

فرآیند کار چطور هست؟

ما از افزونه Woocommerce Deposits برای ایجاد امکان پرداخت نسیه (قسطی) محصولات ووکامرسی استفاده می‌کنیم. حال اگر بتوانیم به گونه‌ای فرآیند پرداخت دوره لرن‌پرس را به محصول ووکامرس گره بزنیم، خواهیم توانست پرداخت نسیه را برای دوره‌های لرن‌پرس فراهم کنیم.

اخیراً با افزونه بسیار کاربردی Cool Integration for LearnPress & WooCommerce که به صورت رایگان در مخزن وردپرس قرار گرفته آشنا شدم. اصل کار این افزونه تولید خودکار محصول ووکامرسی از روی دوره تعریف شده هست. به عبارتی وقتی دوره‌ای تعریف یا بروزرسانی می‌شود، محصول معادل نیز تعریف یا بروزرسانی می‌شود.

قدم نهایی، انتقال خودکار کاربر به صفحه پرداخت ووکامرس، پس از کلیک رو دکمه «خرید محصول» هست که یک Snippet Code ساده نوشتم که در اختیارتون قرار میدم.

نکته: دو افزونه به نام Woocommerce Depositis وجود دارد؛ یکی متعلق به وب‌سایت ووکامرس (اینجا) و دیگری در اینجا و من در این آموزش، از همین افزونه دوم استفاده می‌کنم و می‌تونید از سایت پرشین‌اسکریپت رایگان دانلود کنید.

تنظیمات افزونه Woocommerce Deposits

این افزونه دارای تنظیمات مختلفی هست که بررسی اون‌ها در این مجال نمیگنجه، لذا به یک مورد مهم اون اشاره می‌کنم که با عنوان آموزشمون مرتبط هست.

در صفحه تنظیمات ووکامرس، به تب تنظیمات افزونه Deposits و سپس به تب Checkout Mode بروید. در اینجا می‌تونید نوع و مقدار نسیه رو مشخص کنید و نوع نسیه به 2 صورت درصدی یا ثابت هست.

در صورتی که بخواید امکان پرداخت نسیه را به صورت سراسری برای همه محصولات ووکامرس فعال کنید، می‌تونید طبق تصوی زیر، گزینه مربوط به Checkout Mode را انتخاب کنید.

با فعال‌سازی این حالت، گزینه‌هایی جهت پرداخت نسیه به صفحه پرداخت (Checkout) ووکامرس اضافه خواهد شد.

انتقال خودکار از دوره به صفحه پرداخت ووکامرس

با استفاده از قطعه کد زیر، عملاً صفحه سبد خرید یا پرداخت لرن‌پرس رو حذف و به جای اون صفحه پرداخت ووکامرس رو نمایش میدم و کاربر وقتی رو دکمه «خرید دوره» کلیک می‌کنه، به صورت خودکار محصول معادل در سبد خریدش قرار می‌گیره و به صفحه پرداخت ووکامرس منتقل میشه. من به همچین چیزی نیاز داشتم. شما ممکنه متناسب با نیازتون کد رو ویرایش کنید.

کد مربوطه:

add_filter( 'learn-press/enable-cart', function() {
    return true;
}, 99 );

remove_action( 'learn-press/purchase-course-handler', array( 'LP_Request', 'do_checkout' ), 10, 3 );

add_action( 'learn-press/purchase-course-handler', 'skm_lp_handle_purchase_course', 10, 3);
function skm_lp_handle_purchase_course($course_id, $cart_id, $action) {
     $product = get_post( get_post_meta( $course_id, '_mlpwc_xref' )[0] );
     WC()->cart->add_to_cart( $product->ID, 1 );
      
     if (wp_redirect(wc_get_checkout_url ())) {
           exit;
     }
}

امیداورم براتون مفید واقع بشه :)

نظرات و پیشنهادات و راهکارهاتون رو کامنت کنید. سپاس