افزایش سرعت و پرفورمنس Action & Filter Hook پلتفرم: wordpress مبتدی (Easy) سطح ریسک: پایین و بی‌خطر (Low Risk)

غیرفعال کردن اسکریپت امبد وردپرس (Disable oEmbed)

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

با قرار دادن کد زیر در functions.php، فایل wp-embed.min.js کاملاً لغو ثبت شده و درخواست اضافه حذف می‌گردد.

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

بازبینی: 1405/06/29
پلتفرم اجرایی (Platform) wordpress
نوع کد (Code Type) Action & Filter Hook
محل قرارگیری فایل (Location) functions.php
سطح دشواری (Difficulty) مبتدی (Easy)
سطح ریسک (Risk Level) پایین و بی‌خطر (Low Risk)
نیاز به بکاپ اولیه؟ خیر (کم‌ریسک)
سازگاری با وردپرس تمامی نسخه‌ها
سازگاری با ووکامرس و HPOS سازگار
|
<?php
/**
 * غیرفعال‌سازی اسکریپت wp-embed و فیلترهای تعبیه‌سازی خودکار
 */
function bisco_disable_embeds() {
    // لغو ثبت اسکریپت wp-embed در فرانت
    wp_deregister_script( 'wp-embed' );

    // حذف اندپوینت‌های REST API مربوط به امبد
    remove_action( 'rest_api_init', 'wp_oembed_register_rest_route' );

    // فیلتر کردن کش oEmbed
    add_filter( 'embed_oembed_discover', '__return_false' );

    // حذف متاتگ‌های کشف امبد در هدر
    remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
    remove_action( 'wp_head', 'wp_oembed_add_host_js' );
}
add_action( 'init', 'bisco_disable_embeds', 9999 );

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

کد را در functions.php قالب درج کنید.

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

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

تابع wp_deregister_script مانع از تزریق wp-embed.min.js به انتهای صفحه شده و اندپوینت‌های مربوط به آن در REST API بسته می‌شوند.

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

در وب‌سایت‌هایی که نمی‌خواهند پست‌هایشان توسط سایت‌های دیگر با کارت امبد نمایش داده شود و به اسکریپت اضافه نیازی ندارند.

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

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

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

وردپرس ۴.۴ به بالا.

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

در سورس صفحه جستجو کنید؛ عبارت wp-embed.min.js نباید یافت شود.

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

کد را حذف کنید.

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

اگر ویدیوهای آپارات یا یوتیوب را با iframe دستی می‌گذارید، این کد هیچ مشکلی برای آن‌ها ایجاد نمی‌کند.

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

بستن اندپوینت‌های غیرضروری در REST API سطح حمله را کاهش می‌دهد.

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

کاهش ۱ درخواست HTTP و صرفه‌جویی در زمان تحلیل JS مرورگر.

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

خیر، تعبیه‌های معمول یوتیوب، آپارات یا کدهای آی‌فریم بدون مشکل لود خواهند شد.
منابع و مستندات رسمی بررسی‌شده (Official Sources):

سبد خرید شما

0 افزونه

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

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

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

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

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

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