کتابخانه کد و توابع اختصاصی بیسکو وب

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

۱۰۰ قطعه کد آماده ۴۰۵۴۸ بار استفاده و کپی شده ۱۰۰٪ تست‌شده و ایمن
فضای کار توسعه و مهندسی کد استودیو بیسکو وب
PHP ووکامرس (WooCommerce) Filter Hook (woocommerce_quantity_input_max)

تعیین حداکثر تعداد خرید مجاز محصول در ووکامرس (Maximum Product Quantity)

با فیلتر `woocommerce_quantity_input_max` حداکثر سفارش مجاز (مثلاً حداکثر ۲ عدد در هر سفارش) را قفل کنید.

متوسط (Medium Risk) متوسط (Medium)
<?php
/**
 * محدودسازی حداکثر تعداد سفارش هر محصول در سبد خرید به ۲ عدد
 */
function bisco_set_maximum_product_quantity( $max, $product ) {
    // سقف خرید برای هر فاکتور ۲ عدد
    return 2;
}
add_filter( 'woocommerce_quantity_input_max', 'bisco_set_maximum_product_quantity', 10, 2 );
۳۲۶ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook (woocommerce_product_tabs)

حذف تب اطلاعات بیشتر (مشخصات فنی) در ووکامرس (Remove Additional Information Tab)

با دستور `unset($tabs['additional_information']);` در فیلتر `woocommerce_product_tabs` تب اطلاعات بیشتر را کاملاً بردارید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * حذف کامل زبانه اطلاعات بیشتر (Additional Information) در ووکامرس
 */
function bisco_remove_additional_information_tab( $tabs ) {
    unset( $tabs['additional_information'] );
    return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'bisco_remove_additional_information_tab', 98 );
۶۷۹ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook (woocommerce_sale_flash)

شخصی‌سازی بج تخفیف یا حراج در ووکامرس (Customize Sale Badge)

با فیلتر `woocommerce_sale_flash` درصد اختلاف قیمت عادی و حراج را محاسبه کرده و در بج چاپ کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * نمایش درصد واقعی تخفیف به صورت پویا درون بج حراج محصولات ووکامرس
 */
function bisco_custom_sale_percentage_badge( $html, $post, $product ) {
    if ( ! $product->is_on_sale() ) {
        return $html;
    }

    $regular_price = (float) $product->get_regular_price();
    $sale_price    = (float) $product->get_sale_price();

    if ( $regular_price > 0 && $sale_price > 0 ) {
        $percentage = round( ( ( $regular_price - $sale_price ) / $regular_price ) * 100 );
        return '<span class="onsale bisco-sale-badge">' . esc_html( $percentage ) . '٪ تخفیف</span>';
    }

    return '<span class="onsale">حراج ویژه</span>';
}
add_filter( 'woocommerce_sale_flash', 'bisco_custom_sale_percentage_badge', 20, 3 );
۲۵۶ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook (woocommerce_product_tabs)

تغییر ترتیب تب‌های صفحه محصول در ووکامرس (Reorder Product Tabs)

با فیلتر `woocommerce_product_tabs`، کلید `'priority'` هر تب را بر اساس ترتیب دلخواه خود بازنویسی کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * تغییر ترتیب قرارگیری زبانه‌های صفحه محصول ووکامرس
 */
function bisco_reorder_product_tabs( $tabs ) {
    // تب نظرات کاربران در جایگاه اول قرار گیرد
    if ( isset( $tabs['reviews'] ) ) {
        $tabs['reviews']['priority'] = 10;
    }

    // تب توضیحات تکمیلی در جایگاه دوم
    if ( isset( $tabs['description'] ) ) {
        $tabs['description']['priority'] = 20;
    }

    // تب اطلاعات بیشتر (مشخصات فنی) در جایگاه سوم
    if ( isset( $tabs['additional_information'] ) ) {
        $tabs['additional_information']['priority'] = 30;
    }

    return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'bisco_reorder_product_tabs', 98 );
۶۴۳ 1405/06/29
PHP ووکامرس (WooCommerce) CRUD & HPOS API

دریافت اطلاعات سفارش سازگار با دیتابیس HPOS ووکامرس (High-Performance Order Storage)

با متد `Automattic\\WooCommerce\\Utilities\\OrderUtil::custom_orders_table_usage_is_enabled()` سازگاری را بررسی کرده و داده‌ها را با شیء `$order->get_...()` به جای `get_post_meta` مدیریت نمایید.

حساس و پرخطر (High Risk) پیشرفته (Hard)
<?php
use Automattic\WooCommerce\Utilities\OrderUtil;

/**
 * اعلام رسمی سازگاری قالب/پلاگین با معماری HPOS ووکامرس
 */
add_action( 'before_woocommerce_init', function() {
    if ( class_exists( '\Automattic\WooCommerce\Utilities\FeaturesUtil' ) ) {
        \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
    }
} );

/**
 * دریافت و پردازش اطلاعات سفارش با متدهای CRUD کاملاً سازگار با HPOS
 */
function bisco_process_hpos_compatible_order( $order_id ) {
    // واکشی امن شیء سفارش بدون در نظر گرفتن محل فیزیکی ذخیره در دیتابیس
    $order = wc_get_order( $order_id );
    if ( ! $order ) {
        return;
    }

    // بررسی اینکه آیا سیستم در حالت HPOS اختصاصی کار می‌کند
    $is_hpos_active = OrderUtil::custom_orders_table_usage_is_enabled();

    // روش استاندارد خواندن اطلاعات اصلی سفارش
    $customer_id    = $order->get_customer_id();
    $order_total    = $order->get_total();
    $billing_email  = $order->get_billing_email();
    $billing_phone  = $order->get_billing_phone();
    $payment_method = $order->get_payment_method_title();

    // روش استاندارد ذخیره و خواندن متای اختصاصی (بدون get_post_meta)
    $tracking_code = $order->get_meta( '_bisco_post_tracking_code', true );

    // به‌روزرسانی متای سفارش با متد CRUD
    $order->update_meta_data( '_bisco_processed_at', current_time( 'mysql' ) );
    $order->save(); // ذخیره خودکار در جدول صحیح (چه wp_posts باشد چه wp_wc_orders)
}

/**
 * واکشی سفارش‌های در حال پردازش با wc_get_orders به جای WP_Query سنتی
 */
function bisco_get_recent_processing_orders() {
    $args = array(
        'status'  => array( 'wc-processing' ),
        'limit'   => 10,
        'orderby' => 'date',
        'order'   => 'DESC',
        'return'  => 'ids',
    );

    // این تابع به صورت هوشمند از جداول سریع HPOS کوئری می‌زند
    $order_ids = wc_get_orders( $args );

    return $order_ids;
}
۶۳۹ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook (loop_shop_columns)

تغییر تعداد ستون‌های محصولات در فروشگاه ووکامرس (Products Per Row)

با فیلتر `loop_shop_columns` تعداد ستون‌ها را بر روی ۴ یا عدد دلخواه تنظیم کنید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * تغییر تعداد ستون‌های شبکه محصولات در فروشگاه به ۴ ستون
 */
function bisco_woocommerce_loop_columns() {
    return 4; // تعداد ستون‌ها در هر سطر
}
add_filter( 'loop_shop_columns', 'bisco_woocommerce_loop_columns', 99 );
۳۶۹ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook (woocommerce_quantity_input_min)

تعیین حداقل تعداد خرید محصول در ووکامرس (Minimum Product Quantity)

با فیلتر `woocommerce_quantity_input_min` کف سفارش را بر روی عدد دلخواه (مثلاً ۵ عدد) تنظیم کنید.

متوسط (Medium Risk) متوسط (Medium)
<?php
/**
 * تعیین حداقل تعداد قابل خرید برای محصولات در ووکامرس
 */
function bisco_set_minimum_product_quantity( $min, $product ) {
    // حداقل سفارش برای تمام محصولات (یا یک دسته خاص) ۳ عدد باشد
    return 3;
}
add_filter( 'woocommerce_quantity_input_min', 'bisco_set_minimum_product_quantity', 10, 2 );

// تنظیم مقدار پیش‌فرض فیلد تعداد روی حداقل سفارش
function bisco_set_default_input_quantity( $args, $product ) {
    $args['input_value'] = 3;
    return $args;
}
add_filter( 'woocommerce_quantity_input_args', 'bisco_set_default_input_quantity', 10, 2 );
۵۴۰ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook & Callback

افزودن تب سفارشی به صفحه محصول در ووکامرس (Add Custom Product Tab)

با فیلتر `woocommerce_product_tabs` یک کلید جدید با عنوان و متد کال‌بک بسازید و محتوای دلخواه را درون آن اکو کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * افزودن زبانه سفارشی «شرایط ارسال و گارانتی» به صفحه محصول ووکامرس
 */
function bisco_add_custom_product_tab( $tabs ) {
    $tabs['bisco_warranty_tab'] = array(
        'title'    => 'گارانتی و شرایط ارسال',
        'priority' => 50,
        'callback' => 'bisco_render_warranty_tab_content',
    );
    return $tabs;
}
add_filter( 'woocommerce_product_tabs', 'bisco_add_custom_product_tab' );

// محتوای نمایش داده شده درون زبانه سفارشی
function bisco_render_warranty_tab_content() {
    echo '<h3>ضمانت اصالت و بازگشت وجه بیسکووب</h3>';
    echo '<p>کلیه محصولات ارائه شده دارای ضمانت اصالت ۱۰۰٪، ۷ روز مهلت تست فنی و بازگشت وجه، و پشتیبانی تخصصی آنلاین هستند.</p>';
    echo '<ul>';
    echo '<li>ارسال اکسپرس ظرف ۲۴ الی ۴۸ ساعت کاری</li>';
    echo '<li>بسته‌بندی ایمن و مقاوم در برابر ضربه</li>';
    echo '<li>امکان پیگیری لحظه‌ای مرسوله با کد رهگیری پستی</li>';
    echo '</ul>';
}
۳۸۴ 1405/06/29

تغییر متن دکمه افزودن به سبد خرید در ووکامرس (Change Add to Cart Text)

با دو فیلتر `woocommerce_product_single_add_to_cart_text` و `woocommerce_product_add_to_cart_text` متن دکمه را در صفحه محصول و آرشیو تغییر دهید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * تغییر متن دکمه افزودن به سبد خرید در صفحه محصول تکی و صفحات آرشیو فروشگاه
 */
function bisco_custom_add_to_cart_text( $text ) {
    return 'سفارش آنلاین و پرداخت';
}
add_filter( 'woocommerce_product_single_add_to_cart_text', 'bisco_custom_add_to_cart_text' );
add_filter( 'woocommerce_product_add_to_cart_text', 'bisco_custom_add_to_cart_text' );
۵۰۳ 1405/06/29

سبد خرید شما

0 افزونه

سبد خرید شما خالی است

هنوز محصولی را به سبد خرید اضافه نکرده‌اید. می‌توانید از افزونه‌های اختصاصی ما دیدن فرمایید.

مشاهده فروشگاه افزونه‌ها

ثبت درخواست مشاوره

با تکمیل فرم زیر، کارشناسان فنی بیسکو وب در سریع‌ترین زمان ممکن با شما تماس می‌گیرند.

پشتیبانی و مشاوره تخصصی
پاسخگویی سریع کارشناسان
09903336117