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

4 ارسال در این موضوع قرار دارد

سلام

راهی هست که صفحات نمایش محصولات مثل دسته بندی و برچسب و... ووکامرس محصولات ناموجود رو در انتهای لیست محصولات نمایش بده؟ به عنوان مثال اگر مشتری در منو روی کلمه انگشتر کلیک کرد که به صفحه محصولات دسته انگشتر هدایت میشه، محصولات ناموجود در صفحات آخر باشند و

 یک صفحه داشته باشیم که تمام محصولات فروشگاه رو نمایش بده اما باز هم محصولات ناموجود در انتهای لیست قرار بگیرند. 

پیشاپیش سپاسگذارم

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

این موضوع اسمش میشه "نمایش محصولات موجود در ابتدای لیست" یا "نمایش بر اساس موجودی"

 

کد زیر رو در فانکشن قالبتون قرار بدید . یک فایل با نام functions.php درون قالبتون وجود داره که کافیه در انتهای اون قرار بدید

 

/**
* Sorting out of stock WooCommerce products - Order product collections by stock status, in-stock products first.
*/
class iWC_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 iWC_Orderby_Stock_Status;
/**
* END - Order product collections by stock status, instock products first.
*/

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
در در 1396/01/02, 23:05:46، Mohammad گفته است :

این موضوع اسمش میشه "نمایش محصولات موجود در ابتدای لیست" یا "نمایش بر اساس موجودی"

 

کد زیر رو در فانکشن قالبتون قرار بدید . یک فایل با نام functions.php درون قالبتون وجود داره که کافیه در انتهای اون قرار بدید

 


/**
* Sorting out of stock WooCommerce products - Order product collections by stock status, in-stock products first.
*/
class iWC_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 iWC_Orderby_Stock_Status;
/**
* END - Order product collections by stock status, instock products first.
*/

 

سلام مشکل این کد این هست که بقیه امکانات ماننده نمایش به ترتیب قیمت یا نمایش به ترتیب بیشترین فروش رو از ما میگیره. درسته؟

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری

2 2