
به اشتراک بگذارید

به اشتراک بگذارید
سئو | بلاگ وبداده
Lazy Load در وردپرس؛ راهنمای کامل لود تدریجی صفحات
loading="lazy" را خودکار به تصاویر و از 5.7 به iframeها اضافه میکند.loading="lazy" انجام میدهد و برای فعالسازی آن معمولاً نیازی به هیچ کاری ندارید.loading="lazy" به تگ تصاویر و iframeها انجام میدهد؛ ویژگیای که امروز همه مرورگرهای اصلی از آن پشتیبانی میکنند.loading="lazy" را فقط به تصاویری اضافه میکند که هر دو مشخصه عرض (width) و ارتفاع (height) را دارند. دلیلش جلوگیری از پرش چیدمان صفحه (Cumulative Layout Shift) است. پس همیشه ابعاد تصاویر را خالی نگذارید.
| ویژگی | قابلیت بومی هسته وردپرس | افزونه اختصاصی (مثل a3 Lazy Load) |
|---|---|---|
| فعالسازی | خودکار از نسخه 5.5 | نیازمند نصب و تنظیم |
| پوشش تصاویر | تصاویر دارای width و height | تقریباً همه تصاویر |
| پوشش ویدیو و iframe | فقط iframe دارای ابعاد | ویدیو، iframe و پسزمینه |
| تأثیر بر سرعت | بدون بار اضافه (مرورگری) | ممکن است JS اضافه کند |
| کنترل و تنظیمات | محدود (با کد) | زیاد، با پنل گرافیکی |
| مناسب برای | اغلب سایتها | گالری، اسلایدر، نیاز خاص |
img عبارت loading="lazy" را دیدید، یعنی قابلیت فعال است. توجه کنید که اولین تصویر بزرگ صفحه عمداً این ویژگی را ندارد؛ این رفتار درست است و در ادامه دلیلش را توضیح میدهیم.
width و height را بنویسید.functions.php قالب فرزند خود اضافه کنید:<?php
// غیرفعال کردن کامل قابلیت بومی lazy load وردپرس
// این کد را در انتهای functions.php قالب فرزند (child theme) قرار دهید
add_filter( 'wp_lazy_loading_enabled', '__return_false' );PHP<?php
// مستثنا کردن سه تصویر اول از lazy load (مناسب قالبهای چندستونه و آرشیو)
// پیشفرض وردپرس فقط یک تصویر اول را مستثنا میکند
add_filter( 'wp_omit_loading_attr_threshold', function () {
return 3;
} );PHPخیر. وردپرس از نسخه 5.5 به بعد لود تدریجی تصاویر و از نسخه 5.7 iframeها را بهصورت خودکار و بدون نیاز به افزونه انجام میدهد. تنها در صورتی به افزونه نیاز دارید که بخواهید ویدیوهای پسزمینه، اسلایدرها یا موارد خاص را هم تنبل کنید یا به تنظیمات گرافیکی و کنترل بیشتری نیاز داشته باشید.
یک صفحه از سایتتان را باز کنید، روی تصویری در پایین صفحه راستکلیک کرده و Inspect را بزنید. اگر در تگ img عبارت loading=”lazy” را دیدید، قابلیت فعال است. دقت کنید که اولین تصویر بزرگ صفحه عمداً این ویژگی را ندارد و این رفتار درست و به نفع سرعت است.
بهصورت غیرمستقیم بله. لود تدریجی سرعت بارگذاری اولیه را بهتر میکند و سرعت یکی از عوامل رتبهبندی گوگل (Core Web Vitals) است. اما اگر اشتباه تنظیم شود و تصویر اصلی صفحه را تنبل کند، میتواند معیار LCP و در نتیجه سئو را بدتر کند. نسخههای جدید وردپرس این مشکل را تا حد زیادی خودکار حل کردهاند.
دو دلیل رایج دارد: اول اینکه آن تصویر اولین تصویر محتوایی صفحه است و وردپرس عمداً آن را برای حفظ سرعت نمایش مستثنا میکند؛ دوم اینکه آن تصویر عرض و ارتفاع مشخص ندارد و وردپرس برای جلوگیری از پرش چیدمان، تصاویر بدون ابعاد را تنبل نمیکند.
میتوانید کد add_filter(‘wp_lazy_loading_enabled’,’__return_false’); را در فایل functions.php قالب فرزند اضافه کنید. این کار قابلیت بومی را کاملاً خاموش میکند. پیش از هر ویرایش کد حتماً بکاپ بگیرید. توجه کنید که غیرفعال کردن کامل معمولاً به نفع سرعت سایت نیست و فقط در موارد خاص (مثل تداخل با افزونه) توصیه میشود.
قابلیت بومی از ویژگی استاندارد مرورگر استفاده میکند، سبک است و بار جاوااسکریپت اضافه ندارد، اما کنترل و پوشش محدودتری دارد. افزونهها پوشش گستردهتر (ویدیو، iframe، پسزمینه) و تنظیمات گرافیکی بیشتری میدهند، اما ممکن است کمی سایت را سنگینتر کنند. برای اغلب سایتها قابلیت بومی کافی است.
خیر، تا زمانی که از روش استاندارد (ویژگی loading=”lazy” مرورگر) استفاده کنید، گوگل تصاویر را بهخوبی میبیند و ایندکس میکند. مشکل ایندکس بیشتر مربوط به روشهای قدیمی مبتنی بر جاوااسکریپت بود که آدرس واقعی تصویر را پنهان میکردند؛ روش بومی وردپرس این مشکل را ندارد.
قابلیت بومی وردپرس ویدیوهای embed شده از طریق iframe (مثل یوتیوب) را در صورت داشتن ابعاد، تنبل میکند. اما برای ویدیوهای میزبانیشده روی خود سایت یا ویدیوهای پسزمینه، معمولاً به افزونه اختصاصی نیاز دارید تا بارگذاری آنها هم تا لحظه نیاز به تعویق بیفتد.