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

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

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

حذف محصولات مکمل از صفحه سبد خرید ووکامرس (Remove Cart Cross-sells)

با `remove_action('woocommerce_cart_collaterals', 'woocommerce_cross_sell_display');` بخش محصولات مکمل سبد خرید را حذف کنید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * حذف کامل محصولات فروش مکمل (Cross-sells) از صفحه سبد خرید ووکامرس
 * جهت کاهش نرخ انصراف از خرید (Cart Abandonment)
 */
remove_action( 'woocommerce_cart_collaterals', 'woocommerce_cross_sell_display' );
۴۱۹ 1405/06/29
PHP ووکامرس (WooCommerce) Action Hook (remove_action)

حذف کامل بخش محصولات بیش‌فروشی در ووکامرس (Remove Upsells)

با اجرای دستور `remove_action('woocommerce_after_single_product_summary', 'woocommerce_upsell_display', 15);` بخش بیش‌فروشی را حذف کنید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * حذف کامل بلوک بیش‌فروشی (Upsells) از صفحه محصول تکی ووکامرس
 */
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_upsell_display', 15 );
۵۴۶ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook / Output Hook

تغییر تعداد محصولات پیشنهادی بیش‌فروشی در ووکامرس (Upsell Products Count)

با لغو اکشن پیش‌فرض و تعریف مجدد `woocommerce_upsell_display` با آرگومان‌های سفارشی (مثلاً ۳ ستونه)، نمایش آن را تنظیم کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * تغییر تعداد کل و تعداد ستون‌های بخش بیش‌فروشی (Upsells) ووکامرس
 */
function bisco_custom_upsell_display() {
    // ۳ محصول در یک ردیف ۳ ستونه
    woocommerce_upsell_display( 3, 3 );
}
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_upsell_display', 15 );
add_action( 'woocommerce_after_single_product_summary', 'bisco_custom_upsell_display', 15 );
۵۷۵ 1405/06/29
PHP ووکامرس (WooCommerce) Action Hook (remove_action)

حذف کامل بخش محصولات مرتبط در ووکامرس (Remove Related Products)

با دستور `remove_action` تابع `woocommerce_output_related_products` را از هوک `woocommerce_after_single_product_summary` لغو کنید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * حذف کامل بلوک محصولات مرتبط از صفحه تکی محصولات ووکامرس
 */
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
۵۹۲ 1405/06/29
PHP ووکامرس (WooCommerce) Filter Hook (woocommerce_output_related_products_args)

تغییر تعداد محصولات مرتبط در ووکامرس (Related Products Count)

با فیلتر `woocommerce_output_related_products_args` تعداد محصولات مرتبط (posts_per_page) و تعداد ستون‌ها را تغییر دهید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * تغییر تعداد کل و تعداد ستون‌های محصولات مرتبط در صفحه تکی محصول
 */
function bisco_related_products_args( $args ) {
    $args['posts_per_page'] = 4; // تعداد کل محصولات مرتبط
    $args['columns']        = 4; // نمایش در یک ردیف ۴ ستونه
    return $args;
}
add_filter( 'woocommerce_output_related_products_args', 'bisco_related_products_args', 20 );
۲۴۱ 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 (loop_shop_per_page)

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

با فیلتر `loop_shop_per_page` عدد دلخواه (مثلاً ۱۶ یا ۲۴) را بازگردانید.

پایین و بی‌خطر (Low Risk) مبتدی (Easy)
<?php
/**
 * تغییر تعداد محصولات نمایش داده شده در هر صفحه فروشگاه به ۲۴ عدد
 */
function bisco_woocommerce_products_per_page( $cols ) {
    return 24; // تعداد محصولات در هر صفحه
}
add_filter( 'loop_shop_per_page', 'bisco_woocommerce_products_per_page', 20 );
۶۸۱ 1405/06/29
PHP ووکامرس (WooCommerce) Conditional Filter Hook

تغییر متن دکمه خرید بر اساس دسته‌بندی یا نوع محصول در ووکامرس

با تابع `has_term` درون فیلتر `woocommerce_product_single_add_to_cart_text` متن دکمه را بر اساس دسته کالا تفکیک کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * تغییر متن دکمه خرید بر اساس دسته‌بندی و نوع محصول در ووکامرس
 */
function bisco_category_based_cart_button_text( $text ) {
    global $product;
    if ( ! $product ) {
        return $text;
    }

    $product_id = $product->get_id();

    // برای دسته دوره‌های آموزشی
    if ( has_term( 'courses', 'product_cat', $product_id ) ) {
        return 'ثبت‌نام و شرکت در دوره';
    }

    // برای دسته فایل‌ها و محصولات دانلودی
    if ( has_term( 'downloads', 'product_cat', $product_id ) || $product->is_downloadable() ) {
        return 'خرید و دانلود آنی فایل';
    }

    // برای محصولات رایگان
    if ( '0' == $product->get_price() || empty( $product->get_price() ) ) {
        return 'دریافت رایگان';
    }

    return $text;
}
add_filter( 'woocommerce_product_single_add_to_cart_text', 'bisco_category_based_cart_button_text' );
۲۳۵ 1405/06/29
PHP سئو تکنیکال (Technical SEO) Schema Generator Hook

اسکیمای ساختاریافته محصول ووکامرس (Product Schema JSON-LD)

با خواندن شیء محصول توسط `wc_get_product` اسکیمای کامل قیمت و موجودی را با فرمت JSON-LD تزریق کنید.

متوسط (Medium Risk) پیشرفته (Hard)
<?php
/**
 * تولید اسکیمای جامع و اختصاصی محصول ووکامرس (Product Schema) سازگار با HPOS
 */
function bisco_output_product_schema() {
    if ( ! function_exists( 'is_product' ) || ! is_product() ) {
        return;
    }

    $product = wc_get_product( get_the_ID() );
    if ( ! $product ) {
        return;
    }

    $image_id  = $product->get_image_id();
    $image_url = $image_id ? wp_get_attachment_url( $image_id ) : home_url( '/placeholder.jpg' );

    $schema = array(
        '@context'    => 'https://schema.org',
        '@type'       => 'Product',
        'name'        => esc_html( $product->get_name() ),
        'image'       => array( esc_url( $image_url ) ),
        'description' => esc_html( wp_strip_all_tags( $product->get_short_description() ?: $product->get_description() ) ),
        'sku'         => esc_html( $product->get_sku() ?: 'SKU-' . $product->get_id() ),
        'offers'      => array(
            '@type'           => 'Offer',
            'url'             => esc_url( get_permalink( $product->get_id() ) ),
            'priceCurrency'   => get_woocommerce_currency(),
            'price'           => $product->get_price() ?: '0',
            'priceValidUntil' => gmdate( 'Y-12-31', strtotime( '+1 year' ) ),
            'availability'    => $product->is_in_stock() ? 'https://schema.org/InStock' : 'https://schema.org/OutOfStock',
            'itemCondition'   => 'https://schema.org/NewCondition',
        ),
    );

    // افزودن امتیاز خریداران در صورت وجود
    if ( $product->get_rating_count() > 0 ) {
        $schema['aggregateRating'] = array(
            '@type'       => 'AggregateRating',
            'ratingValue' => $product->get_average_rating(),
            'reviewCount' => $product->get_rating_count(),
        );
    }

    echo '<script type="application/ld+json">' . wp_json_encode( $schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES ) . '</script>' . "
";
}
add_action( 'wp_head', 'bisco_output_product_schema', 5 );
۶۷۴ 1405/06/29
PHP سئو تکنیکال (Technical SEO) Schema Generator Hook

اسکیمای ساختاریافته مقاله و خبر در وردپرس (Article Schema JSON-LD)

با درج داده‌های عنوان، تاریخ‌ها و مشخصات نویسنده در قالب اسکیمای `Article` در هک `wp_head` برای مقالات، تأییدیه کامل گوگل را دریافت کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * تولید خودکار اسکیمای غنی مقاله (Article) با فرمت مدرن JSON-LD
 */
function bisco_output_article_schema() {
    if ( ! is_single() || 'post' !== get_post_type() ) {
        return;
    }

    global $post;
    $author_id = $post->post_author;
    $thumbnail_url = has_post_thumbnail( $post->ID ) ? get_the_post_thumbnail_url( $post->ID, 'full' ) : home_url( '/default-share.jpg' );

    $schema = array(
        '@context'         => 'https://schema.org',
        '@type'            => 'Article',
        'mainEntityOfPage' => array(
            '@type' => 'WebPage',
            '@id'   => esc_url( get_permalink( $post ) ),
        ),
        'headline'         => esc_html( get_the_title( $post ) ),
        'image'            => array(
            esc_url( $thumbnail_url ),
        ),
        'datePublished'    => get_the_date( 'c', $post ),
        'dateModified'     => get_the_modified_date( 'c', $post ),
        'author'           => array(
            '@type' => 'Person',
            'name'  => esc_html( get_the_author_meta( 'display_name', $author_id ) ),
            'url'   => esc_url( get_author_posts_url( $author_id ) ),
        ),
        'publisher'        => array(
            '@type' => 'Organization',
            'name'  => get_bloginfo( 'name' ),
            'logo'  => array(
                '@type' => 'ImageObject',
                'url'   => esc_url( home_url( '/logo.png' ) ),
            ),
        ),
        'description'      => esc_html( wp_strip_all_tags( get_the_excerpt( $post ) ) ),
    );

    echo '<script type="application/ld+json">' . wp_json_encode( $schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES ) . '</script>' . "
";
}
add_action( 'wp_head', 'bisco_output_article_schema', 4 );
۵۲۰ 1405/06/29
PHP سئو تکنیکال (Technical SEO) Schema Generator Hook

اسکیمای مسیر راهنما در وردپرس (BreadcrumbList Schema JSON-LD)

با تزریق ساختار `BreadcrumbList` در هوک `wp_head` برای نوشته‌های تکی، سلسله مراتب کامل صفحه را به صورت JSON-LD به گوگل ارائه دهید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * تولید خودکار اسکیمای مسیر راهنما (BreadcrumbList) برای نوشته‌های وبلاگ
 */
function bisco_output_breadcrumb_schema() {
    if ( ! is_single() ) {
        return;
    }

    global $post;
    $breadcrumbs = array();

    // گام اول: صفحه نخست
    $breadcrumbs[] = array(
        '@type'    => 'ListItem',
        'position' => 1,
        'name'     => 'صفحه اصلی',
        'item'     => esc_url( home_url( '/' ) ),
    );

    $position = 2;

    // گام دوم: دسته اول نوشته
    $categories = get_the_category( $post->ID );
    if ( ! empty( $categories ) ) {
        $first_cat = $categories[0];
        $breadcrumbs[] = array(
            '@type'    => 'ListItem',
            'position' => $position,
            'name'     => esc_html( $first_cat->name ),
            'item'     => esc_url( get_category_link( $first_cat->term_id ) ),
        );
        $position++;
    }

    // گام سوم: نوشته جاری
    $breadcrumbs[] = array(
        '@type'    => 'ListItem',
        'position' => $position,
        'name'     => esc_html( get_the_title( $post ) ),
        'item'     => esc_url( get_permalink( $post ) ),
    );

    $schema = array(
        '@context'        => 'https://schema.org',
        '@type'           => 'BreadcrumbList',
        'itemListElement' => $breadcrumbs,
    );

    echo '<script type="application/ld+json">' . wp_json_encode( $schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES ) . '</script>' . "
";
}
add_action( 'wp_head', 'bisco_output_breadcrumb_schema', 3 );
۶۸۵ 1405/06/29
PHP سئو تکنیکال (Technical SEO) Schema Generator Hook

اسکیمای ساختاریافته سازمان و کسب‌وکار در وردپرس (Organization Schema JSON-LD)

با هوک `wp_head` یک بلاک اسکریپت `application/ld+json` معتبر حاوی اطلاعات برند و شبکه‌های اجتماعی در صفحه اصلی درج کنید.

پایین و بی‌خطر (Low Risk) متوسط (Medium)
<?php
/**
 * تزریق اسکیمای معتبر داده‌های سازمان (Organization) به صورت JSON-LD در هدر
 */
function bisco_output_organization_schema() {
    // اسکیمای سازمان را منحصراً در صفحه اصلی درج می‌کنیم تا از تکرار در کل صفحات پرهیز شود
    if ( ! is_front_page() ) {
        return;
    }

    $schema = array(
        '@context'      => 'https://schema.org',
        '@type'         => 'Organization',
        '@id'           => esc_url( home_url( '/#organization' ) ),
        'name'          => get_bloginfo( 'name' ),
        'url'           => esc_url( home_url( '/' ) ),
        'logo'          => array(
            '@type'  => 'ImageObject',
            'url'    => esc_url( home_url( '/logo.png' ) ), // نشانی مستقیم فایل لوگوی رسمی
            'width'  => 512,
            'height' => 512,
        ),
        'contactPoint'  => array(
            '@type'             => 'ContactPoint',
            'telephone'         => '+98-21-12345678',
            'contactType'       => 'customer service',
            'areaServed'        => 'IR',
            'availableLanguage' => array( 'Persian' ),
        ),
        'sameAs'        => array(
            'https://www.instagram.com/yourbrand',
            'https://t.me/yourbrand',
            'https://x.com/yourbrand',
            'https://www.linkedin.com/company/yourbrand',
        ),
    );

    echo '<script type="application/ld+json">' . wp_json_encode( $schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT ) . '</script>' . "
";
}
add_action( 'wp_head', 'bisco_output_organization_schema', 2 );
۲۰۸ 1405/06/29

سبد خرید شما

0 افزونه

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

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

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

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

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

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