به فکر افزایش سرعت وردپرس خود هستید؟
با توجه به گزارش گوگل، قرار است از خرداد ۱۴۰۰ گوگل الگوریتمی به نام هسته حیاتی گوگل یا Google Core Web Vitals معرفی کند که باعث بهبود رتبه بندی سایتها میشود. در واقع هسته حیاتی گوگل فاکتورهای مربوط به زمان بارگزاری سایت و ثبات و پایداری سایتها را بررسی میکند.
در این مقاله به صورت مفصل ۲۴ روش اصلی برای بالا بردن سرعت سایت وردپرس را بررسی میکنیم. توجه داشته باشید که از خرداد ۱۴۰۰ به بعد سرعت سایت به یکی از مهمترین عوامل موثر در رتبه بندی سایتها تبدیل خواهد شد.
یک سایت وردپرس معمولا به دلیل زیرساخت نامناسب (سرور)، قالب، صفحه ساز و یا افزونه کند میشود. پس از خواندان این مقاله قادر خواهید بود سرعت بارگزاری سایت وردپرس خود را به شکل چشم گیری افزیش دهید.
- ۱. ابزارهای آزمایش سرعت سایت
- ۲. زیرساخت
- ۳. صفحه سازها
- ۴. افزونهها
- ۵. کش – Cashing
- ۶. استفاده از CDN
- ۷. فونتها
- ۸. کدهای شخص ثالث یا Third-Party
- ۹. تصاویر
- ۱۰. ویدئوها
- ۱۱. پایگاه داده
- ۱۲. جلوگیری از بارگزاری موارد اضافی
- ۱۳. حذف Bloat
- ۱۴. Delay Javascript
- ۱۵. Prefetch, Preload, Preconnect
- ۱۶. ریدایرکتها
- ۱۷. جلوگیری از رباتهای مخرب
- ۱۸. موبایل
- ۱۹. ووکامرس
- ۲۰. به روز رسانیها
- تمام شد…
۱. ابزارهای آزمایش سرعت سایت
در گذشته سرعت سایت اهمیت خیلی زیادی روی رتبه بندی سایتها نداشت. بعد از به روز رسانی بزرگ GTmetrix با توجه به تغییراتی که گوگل قرار است لحاظ کند سرعت بارگزاری سایت شما به یکی از مهمترین عوامل رتبه بندی سایت تبدیل شده است. در گذشته ممکن بود سایت شما TTFB کندی داشته باشد یا CSS/JS های زیادی در سایت خود میداشتید و باز هم رتبه سایت شما رتبه قابل قبولی بود.
TTFB مخفف time to first byte است. به بیان ساده، اندازه گیری مدت زمانی است که مرورگر باید قبل از دریافت اولین بایت داده از سرور منتظر بماند. هرچه این مدت زمان دریافت داده بیشتر باشد، مدت زمان بیشتری طول میکشد تا صفحه برای بازدیدکننده نمایش داده شود.
با توجه به اعلامیه جدید گوگل مبنی بر تاثیر سرعت بارگزاری سایتها در رتبه بندی سایتها، باید سایت خود را از لحاظ سرعت بارگزاری بهینهسازی کنید. ابزارهای زیر، بهترین و مهمترین ابزارهای برای آزمایش سرعت سایت شما هستند:
- Google PageSpeed Insights: مهمترین ابزاری که باید از آن استفاده کنید. این ابزار توسط گوگل ارائه شده است و شما میتوانید سایت خود را دقیقا با توجه به معیارهای خیلی مهم بهینهسازی کنید. بیشتر این مورد را با کلمه مخفف PSI به کار میبرند.
- Google Search Console: با استفاده از گوگل سرچ کنسول میتوانید گزارش صفحات کند سایت خود را مشاهده کنید. البته توجه کنید این ابزار پیشنهاد خاصی برای رفع اشکال ارائه نمیکند.
- GTmetrix: ابزار بسیار کاربردی که میتوانید با استفاده از آن مشکلات سایت خود را پیدا کنید. این ابزار پیشنهاد و روش رفع اشکال هم به شما ارائه میهد.
- KeyCDN Performance Test: یک ابزار بسیار کاربردی برای اندازه گیری TTFB و DNS lookup در ۱۰ منطقه جغرافیایی مختلف.
- Query Monitor: افزونه بسیار کاربردی وردپرس که با استفاده از آن میتوانید افزونههای کند سایت خود را پیدا کنید.
- واکاو: سرویس ایرانی مشابه GTmetrix. پیشنهاد میکنم برای آزمایش TTFB و DNS looup در منطقه جغرافیایی ایران از این سرویس استفاده کنید.
به فرآیندی که عمل جستجوی IP یک سایت در بین DNS Serverها انجام میدهد، DNS Lookup میگویند. تا زمانی که این فرآیند انجام نشود مرورگر قابل به دریافت فایلهای سایت شما نیست. این فرآیند باید بین ۲۰ الی ۱۲۰ میلی ثانیه باشد.
۲. زیرساخت
یکی از مهمترین عوامل در سرعت سایت، زیر ساخت سایت میباشد. منظور از زیر ساخت هاستینگ سایت شماست. در واقع این مسئله از دست شما خارج است و رابطه مستقیم با کیفیت هاستینگی دارد که شما برای سایت خود تهیه کرده اید.
هاستینگی دارای کیفیت بالاست که گزارش TTFB سایت شما کمتر از 200ms باشد.
۳. صفحه سازها
جدیدا صفحه سازهای وردپرس سازگاری با استانداردهای جدید GTmetrix ندارند. در واقع میشود گفت که اغلب صفحه سازها دارای فایلهای CSS و JS بسیار زیادی هستند و DOM صفجه را بسیار طولانی میکنند که این مسئله باعت تاثیر مستقیم روی سرعت سایت میشود.
متاسفانه صفحه ساز معروف Elementor از قاعده مستثنی نیست. اگر توجه داشته باشید اکثر سایتهای وردپرسی به فکر تغییر صفحه ساز سایت خود هستند و دقیقا دلیل این مسئله عدم سازگاری این صفحه ساز با استانداردهای جدید Google PageSpeed است.
۴. افزونهها
برخی معتقدند که برای طراحی سایت نیاز به افزونههای متعدد داریم. البته این مسئله همیشه درست نیست. بعضی سایتها با ۲۰ افزونه سرعت قابل قبولی دارند و بعضی سایتهای وردپرسی هستند با ۵ افزونه سرعت به شدت کندی دارند. مسئلهی مهم این است که شما بدانید چه افزونههایی کند است و از آنها استفاده نکنید.
من در مقالهای دیگر به صورت مفصل ۷۳ افزونه کند وردپرس را لیست کردهام.
با استفاده از افزونه Query Monitor وردپرس میتوانید سرعت افزونههایی که روی سایت خود دارید را چک کنید و افزونههای کند را پیدا کنید.
- افزونههای کند را استفاده نکنید.
- افزونههای سایت خود را با کمک Query Monitor بررسی کنید.
- در صورت امکان از افزونههایی که از jQuery استفاده میکنند خودداری کنید.
- از افزونههایی که به صورت ماژولار طراحی شده اند استفاده کنید و امکانات اضافی آنها را غیر فعال کنید.
- از افزونههای SSL، ریدایرکت و کارهایی که میتوانید دستی انجام دهید خودداری کنید.
- از افزونههایی که پردازش بالایی دارند خودداری کنید.
- از افزنههایی که برای بهینه سازی سربرگ و فوتر سایت وجود دارندخودداری کنید. (سعی کنید دستی امکانات را فراهم کنید)
- با استفاده از افزونه کروم WP Hive میتوانید قبل از نصب افزونه سرعت آن را بررسی کنید
۵. کش – Cashing
با استفاده از افزونههای بسیار کاربردی که برای وردپرس وجود دارد شما به سادگی میتوانید کشینگ را در سایت خود فراهم کنید. به نظر من دو افزونه بسیار کاربری در این زمینه WP-Rocket و Lite Speed Cache هستند. مورد اول غیر رایگان و لایت اسپید کش رایگان است. از لحاظ امکانات دو افزونه هیچ فرقی باهم ندارند. توجه داشته باشید فقط در صورتی از افزونه Wp-Rocket استفاده کنید که لایسنس اورجینال از سایت مرجع داشته باشید.
اگر وب سرور سایت شما Lite Speed است حتما از افزونه Lite Speed Cache استفاده کنید.
جهت فعالسازی کشینگ از طریق افزنه لایت اسپید کش، پس از نصب افزونه به مسیر Lite Speed Cache > کش بروید و تنظیمان کنترل کش را فعال کنید.
همچنین اگر افزونه کشینگ دیگری استفاده میکنید که برخی از امکانات مهم را ندارد میتوانید از افزونههای زیر استفاده کنید:
- بهینهسازی پایگاه داده: WP-Optimize
- بهینهسازی CSS/JS ها: Autoptimize
- رفع مشکل Delay JavaScript وردپرس: Flying Scripts
- رفع مشکل Preload links / instant page وردپرس: Perfmatters یا Flying Pages
- رفع مشکل Prefetch/preload وردپرس: Perfmatters, Pre* Party
۶. استفاده از CDN
سرویس ایرانی ابر آروان و سرویس خارجی کلودفلیر دو سرویسی هستند که میتواند از خدمات CDN آنها استفاده کنید.
۷. فونتها
بهینهسازی فونتها به سادگی کشینگ نیست. این مسئله مقداری پیچیدگی دارد.
با استفاده از GTmetrix شما میتوانید ببینید که مدت زمان بارگذاری فونتهای شما چقدر است. در اینجا چند روش بهینهسازی سرعت بارگزاری فونتها را توضیح میدهم:
- به قسمت Gtmetrix Waterfall > Fonts مراجعه کنید تا سرعت لود فونتهای سایت خود را ببینید.
- تا حد امکان تعداد فونت کمی داشته باشید. (توجه داشته باشید پکهای آیکون در سایت شما فونت محسوب میشوند)
- فونتهای سایت خود را به صورت داخلی استفاده کنید. از استفاده فونتهای گوگل و خارجی خودداری کنید.
- فونتها را زودتر بارگزاری کنید. Preload fonts
- از افزونههایی که از فونتهای اضافی استفاده میکنند خودداری کنید
میتوانید فونتهای خود را با استفاده از اضافه کردن قطعه کد زیر به فایل .htaccess به سادگی preload کنید.
<IfModule mod_headers.c> Header add Link "</wp-content/themes/hello-elementor/assets/fonts/IRANSans/IRANSansWeb.woff2>; rel=preload; as=font; crossorigin" Header add Link "</wp-content/themes/hello-elementor/assets/fonts/IRANSans/IRANSansWeb_Medium.woff2>; rel=preload; as=font; crossorigin" Header add Link "</wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.woff2>; rel=preload; as=font; crossorigin" Header add Link "</wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.woff2>; rel=preload; as=font; crossorigin" Header add Link "</wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.woff2>; rel=preload; as=font; crossorigin" </IfModule>
۸. کدهای شخص ثالث یا Third-Party
منظور از کدهای شخص ثالث در وردپرس، درخواستهایی است که باید به سرورهای دیگر ارسال شود. این موارد مثلا شامل فونتهای گوگل، گوگل مپ، تبلیغات گوگل AdSense، آواتار، گوگل تگ منیجر، اشتراک گذاری و از این قبیل هستند. بعضی از اینها قابل بهینهسازی هستند ولی برخی باعث کندی سایت شما میشود.
- فونتها گوگل: فونتهایی که در نظر دارید را در هاست خودتان آپلود کنید. از آدرس fonts.gstatic.com استفاده نکنید.
- گوگل مپ: از نقشه عکس بگیرید و از عکس استفاده کنید. اگر میخواهید از نقشه استفاده کنید حتمال بارگذاری تنبل روی iframe ها را فعال کنید.
- گوگل آنالیتیکس: از طریق هاست خود به صورت local استفاده کنید.
- گوگل تگ منیجر: از قرار دادن کدها در هدر سایت خودداری کنید.
- یوتوب: از بارگزاری تنبل ویدئوها استفاده کنید. به جای لود ویدئو از تصویر استفاده کنید روی iframe ویدئو.
- gravatars: در صورتی که میتوانید این قسمت را غیر فعال کنید. در غیر این صورت بارگزاری را به تاخیر بیاندازید.
در نظر داشته باشید که با استفاده از قسمت ۱۴ دامنه منابع شخص ثالث را به تاخیر بیاندازید. prefetch
اگر شما در سایت خود از iframe ها استنفاده میکنید (مثلا یوتوب یا آپارات) برای فعال کردن بارگزاری تنبل iframe ها به قسمت بهینه سازی برگه > تنظیمات رسانه وارد شوید و مطابق تصویر زیر این گزینه را فعال کنید.
۹. تصاویر
روشهای مختلفی برای بهینهسازی تصاویر در سایت وجود دارد.
با استفاده از GTmetrix و Google PageSpeed میتوانید راهنماییها و تصاویری که سرعت بارگزاری بالایی دارند و سایت شما را کند کردند بررسی کنید.. البته توجه داشته باشید که فقط تصاویری که اوپتیمایز نشده اند را نمایش میدهد. به مسائل زیر توجه داشته باشید:
- اندازه مناسب تصویر: اندازه تصاویر بزرگ را کوچک کنید. برخی افزونهها هستند که تصاویر بزرگ را در سایت شما پیدا میکنند و آنها را تغییر اندازه میدهند.
- فعال کردن لود تنبل یا Lazy Load: بسیاری از افزونههای وردپرس این امکان را فراهم میکنند. مثلا افزونه WP-Rocket یا LiteSpeed
- پسوند WebP: تمام تصاویر سایت خود را تبدیل به پسوند WebP کنید. با استفاده از یکی از افزونههای WebP وردپرس میتوانید این کار را انجام دهید. توجه داشته باشید که با کمک افزونه WP-Rocket یا LiteSpeed میتوانید این کار را انجام دهید.
۱۰. ویدئوها
اگر در سایت خود از ویدئو استفاده میکنید، آنها سنگین ترین عنصر سایت شما خواهند بود و فقط با استفاده از لود تنبل Lazy Load میتوانید این مسئله را کنترل کنید.
- لود تنبل ویدئوها با کمک افزونه Perfmatters
۱۱. پایگاه داده
پایگاه داده سایت خود را همواره تمیز نگهداری کنید.
بسیاری از پلاگینها هستند که به صورت خودکار پایگاه داده سایت شما رو بهینه سازی میکنند. همچنین میتوانید از پلاگین WP-Optimize استفاده کنید.
۱۲. جلوگیری از بارگزاری موارد اضافی
بعضی از موار هستند که همواره در سایت شما بارگزاری میشوند. به عبارت بهتر فایلهای CSS/JS هایی هستند که لود میشوند ولی شما هیچ استفادهای از آنها نمیکنید. این موارد را باید حذف کنید.
با استفاده از افزونهی Asset CleanUp میتوانید موارد اضافی را بارگزاری نکنید.
۱۳. حذف Bloat
منظور از Bloat در وردپرس تمام امکاناتی ست که در هستهی وردپرس باعث سنگین شدن یا به عبارت بادکردن وردپرس میشود. با حدف این موارد میتوانید مصرف منابع سرور را کاهش دهید. خصوصا مصرف CPU
- غیر فعال کردن HeartBeat
- خودداری از قالبهای غیر استاندارد و سنگین
- حذف رسانههای بی استفاده و اضافی
- حذف افزونهها و قالبهای اضافی
- غیر فعال کردن به روز رسانی خودکار افزونهها و موارد زمان بندی شده
- محدود کردن تاریخچه ویرایش به ۵ الی ۱۰ مورد
- بهینه سازی عمیق پایگاه داده با کمک Wp-Optimize
- جلوگیری از اسپم در فرمهای سایت
- حذف jQuery Migrate در صورتی که از آن استفاده نمیکنید
- غیر فعال کردن امکانات اضافی در سطح زیر ساخت
۱۴. Delay Javascript
برای بهبود سرعت سایت وردپرس خود باید بارگزاری برخی از فایلهای جاوا اسکریپت را به تاخیر بندازید. توجه داشته باشید که حتما باید اسکریپتها شخص ثالث نظیر گوگل آنالیتیکس، گوگل تگ منجیر، گوگل مپ و … را به تاخیر بیندازید.
با استفاده از افزونههای زیر میتوانید این کار را به سادگی انجام دهید:
- LiteSpeed
- Wp-Rocket
- Flying Scripts
۱۵. Prefetch, Preload, Preconnect
این مورد تقریبا برعکس مورد قبلی است. این موارد به مرورگرها میگوید که بعضی از منابع را زودتر باگیری کنند. در ادامه سه مورد را باهم بررسی میکنیم:
- Prefetch: این مورد به مرورگرها کمک میکند تا منابع شخص ثالث را شناسایی کنند. سپس با توجه به دامنه آنها مشخص میگردد که کدام یک از آنها زودتر بارگزاری شوند.
- Preload: این مورد معمولا برای فونتها استفاده میشود. در واقع این مسئله برای زمانی است که میخواهید بارگزاری فونت در اولویت قرار بگیرد تا کاربر بلافاصله سایت شما را با فونت صحیح و سالم مشاهده کند.
- Preconnect: این مورد خیلی کمتر مورد استفاده قرار میگیرد. و در واقع وظیفهی آن شناسایی به مرورگر برای بارگزاری سریعتر منابع شخص ثالث است. فرض کنید از فونتهای گوگل استفاده میکنید، میتوانید فونتهای گوگل را در preconnect قرار دهید تا زودتر بارگزاری انجام شود.
۱۶. ریدایرکتها
اگر در گوگل پیج اسپید به مورد avoid landing page redirects برخورد کردهاید احتمالا به دلیل استفاده از لینکهای نادرست است. یا افزونهای دارید که ریدایرکتهای اشتباه انجام میدهد.
- از افزونههایی که ریدایرکت انجام میدهند خودداری کنید.
- همواره از هط کجهای انتهای لینک استفاده کنید مثلا https://example.com/blog/
- از پورت SSL مجاز استفاده کنید و رکورد www صحیحی در دامنه خود داشته باشید.
- تغییر مسیر لینکهای خود را به صورت دستی در فایل .htaccess قرار دهید.
- از افزونه Better Search Replace برای پیدا کردن ریدایرکتهای مشکل دار استفاده کنید.
۱۷. جلوگیری از رباتهای مخرب
یکی از مسائلی که مدیران سایتها معمولا به آن توجی نمیکنند، رباتهای اسپم هستند. برای شناسایی و بلاک کردن رباتهای اسپم میتوانید از افزونه Wordfence استفاده کنید.
- قدم اول: افزونه Wordfence را نصب کنید. توجه کنید که این افزونه CPU مصرف میکند و بعد از اتمام کار حتما آن را غیر فعال کنید.
- قدم دوم: با استفاده از گزینه Live Traffic چند دقیقه این گزارش را مشاهده کنید. Hostname ها را در گوگل سرچ کنید و اگر دیگران گزارش اسپم کرده بودند آنها را بلاک کنید. توجه کنید که GoogleBot را نباید بلاک کنید.
۱۸. موبایل
چگونه امتیاز موبایل را در گوگل پیج اسپید بالا ببریم؟
توجه داشته باشید که تمام مواردی که تا الان گفته شد برای موبایل هم استفاده میشود. اما به دلیل اینکه گوگل از اتصال 3G برای موبایل استفاده میکند سرعت کندتری دارد و بالطبع امتیاز موبایل شما پایینتر خواهد بود. اما راهکارهای وجود دارد که نسخه موبایل هم بهینه سازی کنید:
- مطمئن شوید قالب سایت شما واکنشگرا است.
- اسلایدرها در موبایل را غیر فعال کنید و سعی کنید به جای آنها تصاویر ثابت بگذارید
- اگر میتوانید تا حد امکان از همبرگر منو استفاده نکنید (این مورد در صورتی ست که میخواهید بهترین کارایی سرعت را داشته باشید)
- با استفاده از یک افزونه تصاویر با ابعاد کوچکتر را برای موبایل انتخاب کنید.
- کشینگ موبایل را فعال کنید.
- کیفیت عکسها را برای کسانی که سرعت اینترنت پایینتری دارند پایین بیاورید. با استفاده از افزونه Optimole
- میتوانید از AMP استفاده کنید
- از طریق سرچ کنسول گزارش موبایل سایت خود را همواره بررسی کنید
۱۹. ووکامرس
همواره سایتهای فروشگاهی وردپرس که از ووکامرس استفاده میکنند افزونهها، JS/CSS های بیشتری مصرف میکنند.
- از افزونه Disable WooCommerce Bloat plugin برای شناسایی Bloat استفاده کنید
- هرگز ووکامرس را بر روی هاست اشتراکی استفاده نکنید
- Clear WooCommerce Transients in WooCommerce Status settings.
- Disable cart fragments if you value speed over fragments (in Perfmatters).
- Disable WooCommerce scripts/styles on non-eCommerce pages (in Perfmatters).
۲۰. به روز رسانیها
به روزرسانیهای سایت خود را دائما و به صورت مرتب انجام دهید.
- به روز رسانی نسخه PHP
- به روز رسانی MySql و MariaDB
- به روز رسانی هسته وردپرس، افزونهها، قالبها و فریمورکها
تمام شد…
اگر شما هم تجربهای در زمینه افزایش سرعت وردپرس داشتید، در دیدگاهها برای من بفرستید. این مقاله همواره بروزرسانی میشود.
اگر به نظر شما این مقاله مفید بود، اشتراک گذاری این مقاله منو بسیار خوشحال میکنه. همچنین میتونید نظرتونو در دیدگاهها برای من بذارید، نظرات شما انرژی بخش است. موفق باشید.