برای استعلام یا ارسال سفارش اینجا کلیک کنید.

نمایش محصولات ناموجود ووکامرس در انتهای لیست

 Sorting-Out-of-Stock-WooCommerce-Products نمایش محصولات ناموجود ووکامرس در انتهای لیست

نمایش محصولات ناموجود ووکامرس در انتهای لیست یکی از ترفندهای بسیار کاربردی و ضروری برای فروشگاه های ووکامرسی است. چرا که در صورت زیاد بودن تعداد محصولات ناموجود، ممکن است کالاهای موجود آن طور که باید در معرض دید کاربران قرار نگیرند.

ووکامرس به طور پیش‌فرض دارای چند ترتیب نمایش مختلف برای محصولات است که توسط کاربر هم قابل تغییر هستند؛ اما در این بین امکان نمایش کالاهای ناموجود در انتهای لیست وجود ندارد. همین امر می‌تواند موجب از دست دادن مشتریان زیادی برای فروشگاه شما شود؛ چون احتمال نمایش محصولات موجود را کاهش می‌دهد.

خوشبختانه راه حل ساده و مناسبی برای انجام این کار وجود دارد که با اضافه کردن چند خط کد به قالب، قابلیت مورد نظر فعال می‌شود.

کد نمایش محصولات ناموجود ووکامرس در انتها

کافیست قطعه کد زیر را به فایل functions.php قالب خود اضافه کنید. توجه داشته باشید که در صورت استفاده از Child Theme، این کدها را در فایل functions.php مربوط به Child Theme خود قرار دهید (و نه در قالب اصلی).

/**
* Sorting out of stock WooCommerce products - Order product collections by stock status, in-stock products first.
*/
class Vebeet_Orderby_Stock_Status {
    public function __construct() {
        // Check if WooCommerce is active
        if (in_array('woocommerce/woocommerce.php', apply_filters('active_plugins', get_option('active_plugins')))) {
            add_filter('posts_clauses', array($this, 'order_by_stock_status'), 2000);
        }
    }
    public function order_by_stock_status($posts_clauses) {
        global $wpdb;
        // only change query on WooCommerce loops
        if (is_woocommerce() && (is_shop() || is_product_category() || is_product_tag())) {
            $posts_clauses['join'] .= " INNER JOIN $wpdb->postmeta istockstatus ON ($wpdb->posts.ID = istockstatus.post_id) ";
            $posts_clauses['orderby'] = " istockstatus.meta_value ASC, " . $posts_clauses['orderby'];
            $posts_clauses['where'] = " AND istockstatus.meta_key = '_stock_status' AND istockstatus.meta_value <> '' " . $posts_clauses['where'];
        }
        return $posts_clauses;
    }
}
new Vebeet_Orderby_Stock_Status;
/**
* END - Order product collections by stock status, instock products first.
*/

 

هاست و دامنه ندارید!؟ سفارش دهید
توسعه دهنده وب، علاقمند به وردپرس، دانشجوی رشته مهندسی نرم افزار
در کانال ما عضو شوید و از آخرین اخبار ، محصولات و تخفیف با خبر شوید... کانال تلگرام وبیت

دیدگاهتان را بنویسید

ارسال دیدگاه به معنی این است که شما ابتدا قوانین ارسال دیدگاه را مطالعه کرده اید و با آن موافق هستید.

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

آخرین نمونه کار ها مشاهده همه

آخرین طرح های اختصاصی اجرا شده