حذف محصولات ناموجود از صفحه اصلی
این کد تمامی محصولات ناموجود را از صفحه اصلی سایت شما حذف میکند.
استفاده از این کد به شما کمک میکند تا محصولاتی که دیگر موجود نیستند و هنوز در صفحه اصلی نمایش داده میشوند، حذف شوند و در نتیجه تجربه کاربری بهتری برای بازدیدکنندگان سایت ایجاد شود.
لازم به ذکر است که برخی قالبها مانند وودمارت این قابلیت را بهصورت پیشفرض دارند.
برای اعمال این تغییر، کافی است کد مورد نظر را در انتهای فایل functions.php قالب خود وارد کنید.
توصیه میشود این کد را در قالب فرزند (Child Theme) قرار دهید تا با بهروزرسانی قالب اصلی، تغییرات حفظ شوند.
function custom_pre_get_posts_query( $q ) {
if ( ! is_admin() && $q->is_main_query() ) {
$custom_page_ids = array(123, 456, 789); // آی دی صفحات مورد نظر
if ( is_page( $custom_page_ids ) ) {
$meta_query = $q->get( 'meta_query' );
// Add a meta query to exclude out of stock products
$meta_query[] = array(
'key' => '_stock_status',
'value' => 'outofstock',
'compare' => 'NOT IN',
);
$q->set( 'meta_query', $meta_query );
}
}
}
add_action( 'pre_get_posts', 'custom_pre_get_posts_query' );