افزایش سرعت و پرفورمنس Conditional Enqueue Hook پلتفرم: wordpress متوسط (Medium) سطح ریسک: پایین و بی‌خطر (Low Risk)

بارگذاری شرطی فایل‌های جاوااسکریپت در وردپرس (Conditional JavaScript)

تست‌شده و بازبینی‌شده در 1405/06/29 ۶۷۷ بار کپی ۷۹۳ مشاهده
پاسخ سریع و خلاصه کاربردی (Quick Answer)

با تابع `wp_enqueue_script` درون شرط‌هایی مانند `is_front_page()` یا شناسه برگه، فایل‌های JS را تنها در صفحه هدف لود کنید.

مشخصات فنی و شناسنامه کد (Code Information)

بازبینی: 1405/06/29
پلتفرم اجرایی (Platform) wordpress
نوع کد (Code Type) Conditional Enqueue Hook
محل قرارگیری فایل (Location) functions.php
سطح دشواری (Difficulty) متوسط (Medium)
سطح ریسک (Risk Level) پایین و بی‌خطر (Low Risk)
نیاز به بکاپ اولیه؟ خیر (کم‌ریسک)
سازگاری با وردپرس تمامی نسخه‌ها
سازگاری با ووکامرس و HPOS سازگار
|
<?php
/**
 * بارگذاری شرطی اسکریپت‌های جاوااسکریپت در صفحات نیازمند
 */
function bisco_conditional_enqueue_scripts() {
    // بارگذاری کتابخانه اسلایدر فقط در صفحه نخست
    if ( is_front_page() ) {
        wp_enqueue_script(
            'bisco-home-slider',
            get_stylesheet_directory_uri() . '/assets/js/slider.js',
            array(),
            '1.0.0',
            true // بارگذاری در فوتر
        );
    }

    // بارگذاری فایل نقشه‌های تعاملی فقط در برگه نمایندگی‌ها
    if ( is_page( 'branches' ) ) {
        wp_enqueue_script(
            'bisco-map-script',
            get_stylesheet_directory_uri() . '/assets/js/leaflet-map.js',
            array(),
            '1.0.0',
            true
        );
    }
}
add_action( 'wp_enqueue_scripts', 'bisco_conditional_enqueue_scripts' );

کد را کجا قرار دهیم؟ (Placement Guide)

کد را در functions.php قرار داده و پارامتر آخر true را برای بارگذاری در فوتر حفظ کنید.

مسیر فایل: functions.php

این کد چگونه کار می‌کند؟ (How it Works)

هوک wp_enqueue_scripts در زمان تعیین توکن صفحه اجرا شده و فقط در صورت برقراری شرط، اسکریپت را به بخش پایین بدنه (Footer) می‌فرستد.

چه زمانی از این کد استفاده کنیم؟ (Use Cases)

برای کتابخانه‌های سنگین JS نظیر Swiper, Chart.js, Leaflet و اسکریپت‌های انیمیشن GSAP.

چه زمانی نباید از این کد استفاده کنیم؟ (Anti-patterns)

برای فریم‌ورک‌های پایه‌ای که منطق ناوبری منوی موبایل یا تم را در تمام صفحات کنترل می‌کنند.

پیش‌نیازهای اجرا

وردپرس ۳.۰ به بالا.

نحوه تست و اطمینان از عملکرد

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

نحوه بازگردانی سریع (Rollback)

کد را حذف یا شرط‌ها را ویرایش کنید.

خطاهای رایج و راه‌حل رفع

لود کردن اسکریپت در هدر به جای فوتر (همیشه آرگومان آخر wp_enqueue_script را true قرار دهید).

ملاحظات و نکات امنیتی

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

تاثیر بر سرعت و پرفورمنس

کاهش شدید زمان اجرای Main Thread و بهینه‌سازی شاخص تعاملی INP (Interaction to Next Paint).

پرسش‌های متداول پیرامون این کد (FAQ)

قرار دادن مقدار true باعث می‌شود اسکریپت در انتهای برچسب body لود شود و مانع رندر شدن سریع محتوای صفحه نشود.
منابع و مستندات رسمی بررسی‌شده (Official Sources):

سبد خرید شما

0 افزونه

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

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

مشاهده فروشگاه محصولات

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

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

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

فعال‌سازی اعلان‌های وب‌اپلیکیشن

از آخرین تخفیف‌های شگفت‌انگیز، وضعیت سفارشات و به‌روزرسانی‌های اختصاصی روی گوشی خود باخبر شوید.