خطای Clickable Elements Too Close Together یکی از خطاهای معمول روی حالت ریسپانسیو وبسایت است که رفع این خطا روی وبسایت تاثیر بسیار زیادی در بهبود ترافیک وبسایت و تجربه کاربری بهتر کاربران موبایل خواهد شد.
دلیل خطای Clickable Elements Too Close Together در سرچ کنسول وبسایت شما این است که بنا به دلایلی مرور وبسایت شما برای کاربران موبایل سخت و پیچیده است.
بیش از ۴ میلیارد نفر در کشورهای مختلف از طریق دستگاههای موبایل به اینترنت دسترسی مییابند. از این رو، حل خطای Clickable Elements Too Close Together قطعا امری حیاتی محسوب میشود. خوشبختانه چندین روش برای حل این خطا روی سرچ کنسول وبسایت شما وجود دارد تا از این طریق وبسایت شما ریسپانسیو و اصطلاحا Mobile Friendly باشد.
معنای خطای Clickable Elements Too Close Together
به طور کلی وجود خطای ریسپانسیو روی وبسایت شما، میتواند دسترسی و مرور وبسایت را برای کاربران موبایل سخت و بسیار چالشبرانگیز کند. شما میتوانید با کمک گزارش Mobile Usability سرچ کنسول، وبسایتتان را از این نظر آزمایش کنید.
گوگل سرچ کنسول در خطای Clickable Elements Too Close Together تمامی المانهای کلیکشدنی وبسایت شما از جمله دکمهها و لینکها را بررسی میکند. هدف از این کار این است که بررسی شود که کاربران موبایل از طریق دستگاه خود و هنگام لمس لینک و دکمه روی وبسایت شما دچار مشکل نخواهند شد.
اگر گوگل سرچ کنسول Google Search Console تشخیص دهد که المانهای کلیکشدنی امکان لمس شدن نداشته باشند یا به صورتی قرار گرفتهاند که کاربران موبایل را دچار مشکل میکنند، خطای Clickable Elements Too Close Together در گزارش سرچ کنسول وبسایت شما نمایش داده خواهد شد.
اگر بر روی خطا روی سرچ کنسول وبسایت خود کلیک کنید به صفحه وضعیت خطا هدایت خواهید شد که جزییات بیشتری در خصوص خطا به شما نمایش داده خواهد شد.
معمولا خطای Clickable Elements Too Close Together در دو حالت روی وضعیت ریسپانسیو وبسایت شما رخ خواهد داد؛ یا عناصر کلیک شدنی بسیار کوچکتر از آن هستند که کاربران موبایل بتوانند با انگشت روی آنها کلیک کنند یا بزرگ هستند ولی خیلی به یکدیگر نزدیک هستند و در حقیقت به تجربه کاربری آسیب میزنند.
از آنجایی که خطای Clickable Elements Too Close Together جز خطاهای موبایل قرار میگیرد، حل این مشکل میتوانید امتیاز دسترسپذیری وبسایت شما را افزایش دهد.
دلایل ایجاد خطای Clickable Elements Too Close Together
همانطور که در بخش پیشین نیز توضیح داده عوامل مختلفی باعث ایجاد خطای Clickable Elements Too Close Together در سرچ کنسول وبسایت شما خواهند شد.
البته در صورتیکه در تست موبایل فرندلی گوگل خطایی مشاهده نکردهاید، میتوانید این پیام خطا روی سرچ کنسول خود را نادیده بگیرید.
گاهی اوقات، طراحی ضعیف یک صفحه یا وبسایت و در نتیجه استفاده از عناصر کلیک شدنی زیاد در یک صفحه میتواند باعث ایجاد این خطا شود.
در صورتیکه وبسایت شما برای دستگاههای تبلت و موبایل بهینه نیست و طراحی اختصاصی نیز برای این نوع کاربران خود در نظر نگرفته باشید قطعا با این خطا روی سرچ کنسول وبسایت خود مواجه خواهید شد.
شیوه رفع خطای Clickable Elements Too Close Together
رفع این خطا روی سرچ کنسول وبسایت مسالهی مهمی محسوب میشود که بایستی هرچه سریعتر اقدام به رفع آن کنید. در ادامه روشهای رفع خطای Clickable Elements Too Close Together روی وبسایت را به صورت کامل توضیح خواهیم داد:
حداقل اندازه ۴۸ پیکسل برای تمامی المانهای کلیک شدنی
پیشنهاد میشود که تمامی المانهای کلیک شدنی در صفحات وبسایت، از جمله لینکها و دکمهها حداقل ابعاد 48px در 48px داشته باشند. این ابعاد تقریبا معادل ۹ میلیمتر میشود که میتوان گفت مناسب لمس شدن توسط یک انگشت است.
سعی کنید که ابعاد المانهای کلیک شدنی در صفحه را حداقل 48px در نظر گرفته باشید. در جایی که اینطور نیست حتما اقدام به تغییر ابعاد المان در صفحه کنید.
برای بررسی ابعاد یک المان، صفحه را در مرورگر خود باز کنید. بر روی المان مدنظر خود راست کلیک کنید و گزینه Inspect را انتخاب کنید. بعد از باز شدن DevTools مرورگر کروم، بر روی دکمههای Ctrl + Shift + M بزنید تا وارد حالت ریسپانسیو صفحه شوید. سپس از تب Computed میتوانید ابعاد المان را در کادر آبی رنگ مشاهده کنید.
در صورتیکه نیاز است ابعاد المان کلیک شدنی را از طریق تنظیمات قالب خود یا تنظیمات CSS تغییر دهید.
المانهای کلیک شدنی نزدیک یکدیگر هستند
شرایطی دیگر نیز وجود دارد که در آن المانهای کلیک شدنی نزدیک به یکدیگر هستند به شکلی که کاربر روی دستگاه موبایل خود نمیتواند به درستی و به راحتی اقدام به لمس المان کلیک شدنی کند.
در این شرایط بایستی استایل المانهای مورد نظر را به صورتی تغییر دهید که انجام عمل کلیک روی دستگاه موبایل برای کاربر به راحتی میسر باشد. برای اعمال این تغییرات، در صورتیکه صفحه با المنتور ایجاد شده است به راحتی با ویرایش صفحه با کمک المنتور اقدام کنید و در غیر این صورت بایستی با کمک CSS سفارشی تغییرات مدنظر خود را برای رفع خطای Clickable Elements Too Close Together اعمال کنید.
پس از اعمال تغییرات، بایستی از طریق سرچ کنسول وبسایت خود و ابزار URL Inspection Tool اقدام به ثبت درخواست ایندکس دوباره صفحه تغییر داده شده توسط گوگل کنید.
یافتن علت کندی وردپرس همیشه چالش بزرگی بوده است. زمانیکه از وردپرس استفاده میکنید، از سرور وبسایت گرفته تا افزونهها و پوستهها همگی در کیفیت عملکرد و کندی وردپرس تاثیرگذار هستند. علاوه بر این ممکن است که محتوای بهینهسازی نشده مانند تصاویر، ویدیوها و سایر المانهای در یک محتوا محتوا باعث کندی وردپرس شوند.
برخی توسعهدهندهها به صورت کلی معتقدند که وردپرس کند است. هرچند ممکن است که پیشتر اینطور بوده باشد اما حالا دیگر اینطور نیست. بسیاری از برندهای بزرگ دنیا مانند پلسک، NGINX.com، سونی موزیک، نیویورک تایمز، والت دیزنی، تویوتا، مجله ووگ و … به وردپرس اعتماد کردهاند و از سیستم مدیریت محتوای وردپرس و امکانات آن برای وبسایت خود استفاده میکنند.
به هر روی، عواملی هستند که میتوانند بر عملکرد وبسایت وردپرسی شما تاثیرگذار باشند و به اصطلاح باعث کندی وردپرس شما شوند. مانند:
کیفیت خدمات شرکت ارایه دهنده خدمات هاست
وضعیت بهینهسازی سمت سرور (نسخه PHP، کش سمت سرور، فشرده سازی و …)
پوسته بیکیفیت
افزونههای کند
محتوای بهینه نشده (بیشتر تصاویر)
ارسال درخواست های بیشمار HTTP
استفاده نکردن از CDN
جدای از بهینهسازی سمت سرور که توسط شرکت ارایه دهنده خدمات هاست بایستی انجام شود، بهینهسازیهای زیاد دیگری نیز وجود دارند که بایستی از سمت شما انجام شوند.
۴ گام برای بررسی علت کندی وردپرس
گام ۱: انجام تست سرعت لود صفحه
سرعت لود سایت شما چقدر است؟ هر صفحهای که سرعت لود بالاتر از ۲ ثانیه داشته باشد بایستی بهینهسازی شود. بهترین حالت سرعت لود زیر ۱ ثانیه است.
ابزارهای تست سرعت متفاوتی وجود دارد مانند GTmetrix، ابزار Pingdom و تست سرعت گوگل.
ابتدا اجازه دهید از ابزار تست سرعت gtmetrix استفاده کنیم. در صورتیکه در سایت gtmetrix وارد شوید میتوانید موقعیت سرور تست را نیز انتخاب کنید.
gtmetrix امکانات بسیار خوبی در اختیار شما قرار میدهد و همچنین یک خط زمانی تصویری را در نتیجه تست به شما ارایه میکند تا از وضعیت لود صفحه و کیفیت کندی وردپرس طی تست باخبر شوید.
تب Summary مواردی که باعث کندی وردپرس و ضربه زدن به عملکرد سایت شما میشوند را به شما نمایش می دهد. در بین این موارد، مهمترین بخش زمان پاسخگویی سرور است. اگر شرایط این بخش بحرانی است بهتر است به فکر سرویس هاست بهتر یا مهاجرت به هاست دیگری باشید. اما پیش از تصمیم گیری در این خصوص بهتر است سایر موارد را نیز اصلاح و دوباره بررسی کنید.
خطایی که معمولا با آن در گزارش تست سرعت مواجه میشوید پیام Avoid an excessive DOM size است که به صورت متداول به دلیل استفاده از افزونه های صفحهساز مانند المنتور است.
پیام Avoid enormous network payloads اشاره به عناصر سنگین در صفحه مانند تصاویر، اسکریپتها و فایلهای CSS دارد. در بخش Page Details میتوانید اندازه کل صفحه و تعداد درخواستهای صفحه را نیز بررسی کنید.
عدم استفاده از CDN نیز یکی از علل دیگر برای کندی وردپرس شماست. حتما برای وردپرس خود از CDNهای باکیفیت استفاده کنید و در صورتیکه مخاطبین شما در ایران حضور دارند از خدمات شرکتهای ایرانی در این زمینه استفاده کنید.
گام ۲: تست لود وبسایت
برای تست لود وبسایت میتوانید از ابزار k6 استفاده کنید که یک ابزار رایگان و متن باز است. تست k6 به صورت لوکال روی دستگاه شما صورت میگیرد و برای نصب نسخه رایگان آن لازم است که دستوراتی را در CMD دستگاه خود اجرا کنید.
این ابزار با ایجاد کاربرهای مجازی برای وبسایت شما و ارسال درخواست به سمت وبسایت، وضعیت و نتیجه درخواست ارسالی را بررسی و به شما ارایه میکند. همچنین اطلاعات مغید دیگری را برای بررسی وضعیت لود وبسایت به شما ارایه میکند.
گام ۳: بررسی افزونهها و پوستههای وردپرس
گام بزرگ بعدی، بررسی وضعیت افزونهها و پوستههای روی وردپرس است. همیشه افزونهها یا پوستههایی روی وردپرس هستند که میبایست بهتر بهینهسازی شوند.
برای بررسی وضعیت افزونهها و پوستهها یک روش سریع و راحت وجود دارد؛ افزونهها را یک به یک غیرفعال کنید و به پوسته پیش فرض وردپرس سوییچ کنید و سپس تست سرعت وبسایت خود را در هر مرحله غیرفعالسازی انجام دهید تا افزونه یا افزونههای مشکل ساز را بیابید.
در صورتیکه برای بهینهسازی وبسایت خود نیاز به کمک راکت وردپرس دارید میتوانید از طریق صفحه ثبت سفارش، سفارش خود را ثبت کنید.
۱۶ روش برای رفع کندی وردپرس
در ادامه ۱۶ روش برای رفع کندی وردپرس به شما معرفی خواهیم کرد.
۱. بهروزرسانی وردپرس
یک مساله اساسی در خصوص وردپرس حفظ بهروز بودن وردپرس یا بهروزرسانی وردپرس است. هر آپدیت وردپرس حاوی اصلاحاتی برای رفع نقصهای امنیتی، افزودن قابلیتهای جدید و … است.
برای فعال کردن بهروزرسانی خودکار در وبسایت خود میتوانید فایل wp-config.php را ویرایش کنید یا به صورت دستی روی پیشخوان مدیریت وبسایت خود اینکار را انجام دهید.
همچنین بایستی تمامی افزونهها و پوستههای نصب شده روی وردپرس را بهروز نگه دارید. دقت کنید در صورتیکه افزونه یا پوستهای بر روی وبسایت شما برای بیش از یک سال به روز نشده است، بایستی استفاده از آن را کنار بگذارید.
۲. بهینه سازی تصاویر وردپرس
به صورت معمول حجم قابل توجهی از هر صفحه را تصویر به خود اختصاص میدهد.
تصاویر بزرگ باعث کندی وردپرس میشوند و کاربر نیز با تجربه بدی وبسایت شما را ترک میکند. به همین دلیل، بهینه سازی تصاویر، به صورت دستی یا با کمک افزونه میتواند وضعیت لود صفحات را به صورت قابل توجهی بهبود بخشد.
معمولا زمانیکه قصد بهینهسازی تصاویر را دارید میتوانید از روشهای فشردهسازی lossless یا lossy استفاده کنید. همچنین فرمت مناسبی برای تصویر روی وبسایت انتخاب کنید. از تصاویر با فرمت PNG برای گرافیکهای ایجاد شده توسط ماشین و از JPEG نیز برای عکس استفاده کنید. جدیدترین فرمت که اقبال زیادی نیز نسبت به آن شده است و معمولا در گزارشهای تست سرعت گوگل پیشنهاد میشود، فرمت WebP است که تصاویر وردپرس را با حفظ کیفیت فشردهتر میکند.
۳. استفاده از افزونه تنها در صورت لزوم
افزونه بخش جداناشدنی از چرخه زندگی وردپرس هستند. در حال حاضر بیش از ۵۰۰۰۰ افزونه تایید شده روی مخزن وردپرس قرار دارد علاوه بر این هزاران افزونه رایگان دیگر بر روی اینترنت یا گیت هاب برای استفاده روی وردپرس منتشر شده اند.
افزونههای بهینه نشده یا افزونههایی که به شکل خوبی پیادهسازی نشدهاند میتوانند باعث کندی وردپرس و افت عملکرد وبسایت شما شوند.
میتوانید هر تعداد افزونه وردپرس را روی وردپرس خود نصب کنید اما همیشه بایستی این پرسش را از خود بپرسید که آیا واقعا به این افزونه نیاز دارید یا خیر. همچنین مطمئن شوید که سازنده محصول به صورت مداوم برای افزونه مورد نظر شما بهروزرسانی ارایه میکند.
۴. استفاد از پوسته سریع
انتخاب پوسته مناسب برای وردپرس اهمیت بسیار زیادی دارد. پوسته ای که دارای ساختار نادرست باشد باعث کندی وبسایت شما میشود. قابلیتهای یک پوسته، مانند لایهبندی، منوها، رنگبندی، فونت و وضعیت تصاویر معمولا اولین نکاتی هستند که یک کاربر هنگام مواجهه با وبسایت شما به آنها توجه میکند.
اگر از پوسته ای استفاده کنید که به این نکات توجه کافی نداشته باشد، احتمالا دچار مشکل خواهید شد.
پیش از اینکه پوسته وردپرس را انتخاب کنید، لیستی از تمام ویژگیهایی که به دنبال آن هستید را تهیه کنید و پس از بررسی این ویژگیها، به دنبال یک پوسته قدرتمند و بهروز باشید.
همیشه هنگام انتخاب پوسته وردپرس به دیدگاه کاربران آن، امتیازدهی به محصول و … توجه ویژه داشته باشید.
پوسته را به صورت اورجینال و تنها از سازنده آن دریافت کنید و هیچ وقت از یک محصول نال بر روی وردپرس خود استفاده نکنید.
۵. پیکربندی افزونه کش برای بهینهسازی وبسایت
برخی از سرویسدهندههای خدمات هاست از کش سمت سرور نیز استفاده میکنند. میتوانید از افزونههای لایتاسپید یا راکت برای راهاندازی کش روی وردپرس خود استفاده کنید.
استفاده از افزونه کش مناسب و پیکربندی صحیح آن روی وردپرس به صورت قابل توجهی باعث افزایش سرعت وردپرس و رفع کندی وردپرس شما میشود. البته دقت کنید که استفاده از افزونه کش باعث ایجاد خطا روی وبسایت شما یا باعث ایجاد اختلال بین افزونههای فعال شما نشود.
۶. کاهش درخواستهای بیرونی HTTP
امکان دارد افزونهها و پوسته وردپرس درخواستهایی را به منابع بیرونی از وبسایت شما ارسال کنند. این درخواستها معمولا برای لود فایلهای استایل، فونت، اسکریپت و … که بیرون از وبسایت قرار دارند ایجاد میشوند.
افزونههایی در زمینه شبکههای اجتماعی، آمار و تحلیل و … معمولا چنین درخواستهایی را روی وردپرس شما ایجاد میکنند.
در برخی مواقع و تحت شرایطی، استفاده از این قابلیت منطقی است اما استفاده زیاد از این قابلیت باعث کندی وردپرس میشود. با کاهش درخواستهای HTTP و بهینهسازی شیوه لود آنها میتوان سرعت وبسایت را افزایش دهید.
۷. کوچک کردن استایل و اسکریپتهای وردپرس (Minify کردن)
کوچکسازی یا Minify کردن به رویه حذف المانهای غیرضروری از کد گفته میشوند. در وردپرس منظور از کد، فایلهای JS و CSS است. المانهای غیرضروری نیز به بخشهایی از کد گفته میشود که وجود آنها ضرورتی ندارد و در صورت حذف آن، عملکرد اصلی کد حفظ میشود مانند توضیحات بین خطوط کد.
با کوچکسازی کد وبسایت، فایلهای CSS و JS کوچکتری دارید. در این شرایط، نه تنها سرعت لود بالاتر میرود بلکه همچنین به شکل سریعتری روی مرورگر کاربر ترجمه میشود.
اغلب افزونههای کش ابزاری را برای Minify کردن فایل های CSS و JS در اختیار شما قرار میدهند. به صورت مشخص، افزونه Autoptimize چنین قابلیتی را در اختیار شما قرار میدهد.
۸. تنها اسکریپتهای ضروری در هر صفحه لود شوند.
اغلب منابع مورد استفاده افزونهها و پوسته های وردپرس روی تمام صفحات وردپرس شما لود میشوند در حالیکه در بیشتر موارد قابلیت مورد نظر این افزونهها تنها در صفحات خاصی قابل اجرا است. برای مثال افزونه Contact 7 را در نظر بگیرید، این افزونه فرم تماس را در یک صفحه مشخص در اختیار شما قرار میدهد اما منابع مورد استفاده آن تقریبا در تمامی صفحات وبسایت شما لود میشود که به صورت واضحی چنین وضعیتی غیرضروری است و باعث کندی وردپرس میشود.
افزونه Asset Cleanup دقیقا اینکار را برای شما انجام میدهد. این افزونه منابعی که در یک صفحه لود میشوند را بررسی میکند. سپس میتوانید CSS و JS را که لزوما برای یک صفحه مشخص نیستند را انتخاب کنید.
افزونه Asset Cleanup در کنار افزونههای کش عملکرد بهتری دارد.
۹. افزایش سرعت پیشخوان مدیریت وردپرس
معمولا با بهینهسازی که روی وبسایت انجام میدهید، به صورت خودکار بهبود در سمت پیشخوان وردپرس شما نیز صورت میگیرد. اگر سرعت پیشخوان مدیریت وردپرس کند است، میتوانید افزونههای روی وردپرس خود را یک به یک غیرفعال و وضعیت را در هر مرحله بررسی کنید.
افزونههایی مانند بکآپ وردپرس که برای ایجاد پشتیبان زمانبندی میشود نیز میتواند باعث کندی وردپرس شود.
علاوه بر این بایستی در نظر داشته باشید که افزونههایی مانند جتپک وردپرس به علت مسدود بودن نشانیهایی که آنها استفاده میکنند کاربردی ندارند و باعث کندی پیشخوان مدیریت وردپرس میشوند.
۱۰. موقعیت سرور و پیکربندی آن
موقعیت سرور وبسایت شما و پیکربندی که مدیر سرور برای آن در نظر میگیرد، تاثیر مهمی بر سرعت وبسایت شما دارد.
برای مثال در صورتیکه بازدیدکنندگان وبسایت شما در ایران هستند اما موقعیت سرور وبسایت شما در آلمان یا کشور دیگری است بنابراین بازدیدکنندگان وبسایت شما کندی بیشتری نسبت به سرور وبسایت با موقعیت ایران تجربه خواهند کرد.
اگر بازدیدکنندگان وبسایت شما در همه جای دنیا حضور دارند بنابراین بهتر است از CDN استفاده کنید تا بنا به موقعیت کاربر، نزدیکترین سرور پاسخگوی درخواست او باشد.
۱۱. استفاده از شبکه ارایه محتوا یا CDN
یکی از آسانترین روشها برای افزایش سرعت وبسایت و رفع کندی وردپرس استفاده از یک CDN کاربردی و قابل اطمینان است.
کاری که CDN انجام میدهد، ارایه محتوا از نزدیکترین سرور به کاربر میباشد. به عنوان مثال، شبکهای از سرور را در سطح کشور ایران در نظر بگیرید. در این وضعیت با اینکه موقعیت سرور وبسایت شما در شهر تهران است اما به دلیل استفاده از CDN، درخواست کاربر از نزدیکترین سرور به موقعیت او پاسخ داده میشود.
۱۲. حذف ریدایرکتهای غیرضروری
در برخی مواقع به دلیل حذف نوشته یا صفحه لازم است که محتوای حذف شده به نشانی جدید ریدایرکت شود. اگر این ریدایرکتها مدیریت نشود و بدون توجه به ریدایرکتهای قبلی ریدایرکت نشانی جدید ثبت شود میتواند منجربه ایجاد زنجیرهای از ریدایرکتها در وبسایت شما شود. در برخی مواقع این شرایط منجربه زمان لود بالا و حتی ایجاد خطا روی وبسایت شما شود.
۱۳. رفع خطای ترکیب محتوا یا Mixed content
استفاده از پروتکل https برای وبسایت به یک ضرورت بدل شده است؛ علاوه بر مسایل امنیتی همچنین تاثیر به سزایی در رتبه سئو وبسایت شما خواهد گذاشت. اما معمولا تغییر نشانی وردپرس و وبسایت و استفاده از https گاهی باعث بروز خطایی به نام ترکیب محتوا Mixed content میشود.
علت خطای ترکیب محتوا Mixed content، وجود ترکیبی از منابع مانند تصویر، CSS یا فایل js با نشانیهای http و https است. این مساله علاوه بر ایجاد کندی وردپرس باعث ایجاد خطا و عدم لود صحیح صفحه نیز میشود.
برای رفع این مساله میبایست از افزونه really simple ssl استفاده کنید و قابلیت ترکیب محتوا را برای رفع خطای mixed content بر روی افزونه فعال کنید.
۱۴. بهینهسازی دیتابیس وردپرس
دیتابیس وردپرس، تمام اطلاعات حیاتی وردپرس را در خود نگهداری میکند. اما بدون بهینهسازی، در طول زمان دیتابیس میتواند باعث کندی وردپرس شود.
برای مثال، دیتابیس وردپرس میتواند هنوز اطلاعاتی را در خود داشته باشد که هنگام نصب اولیه وردپرس خود داشتهاید؛ اطلاعاتی در خصوص بازبینی صفحه و نوشتههایی که دیگر وجود ندارند، دیدگاه های حذف شده و …
از این رو بهینهسازی دیتابیس وردپرس برای حفظ کیفیت وردپرس و سرعت وبسایت اهمیت بالایی دارد. برای رفع این مساله میتوانید از افزونههایی مانند WP-Optimize یا WP-Sweep استفاده کنید.
۱۵. به روزرسانی نسخه PHP هاست
وردپرس از زبان برنامه نویسی PHP استفاده میکند؛ یک زبان برنامهنویسی سمت سرور. تمامی افزونهها و پوستههای مورد استفاده روی وردپرس نیز از این زبان برنامهنویسی استفاده میکنند.
هرچه نسخه PHP مورد استفاده برای وبسایت جدیدتر باشد، وبسایت از سرعت بالاتری خواهد داشت. تغییر نسخه PHP وبسایت از طریق کنترل پنل هاست وبسایت شما صورت میگیرد.
البته بایستی در نظر داشته باشید که در حال حاضر بیشتر افزونههای وردپرس، پوستهها و ابزارهای توسعه وردپرس از نسخه ۸.۱ پشتیبانی نمیکنند.
۱۶. استفاده از خدمات هاست باکیفیت
آخرین مورد و البته یکی از مهمترین موارد، استفاده از هاست با کیفیت است.
گاهی اوقات تمامی موارد را برای رفع کندی وردپرس خود رعایت میکنید اما همچنان سرعت پیشخوان یا وبسایت از کیفیت مطلوبی برخوردار نیست. در این شرایط حتی با غیرفعال کردن کلیه افزونهها و استفاده از پوسته پیشفرض وردپرس، سرعت وبسایت چنگی به دل نمیزند؛ در این شرایط بایستی حتما به فکر تعویض هاست خود و استفاده از خدماتی با کیفیتتر از شرکتی دیگر باشید.
جدول wp_postmeta یکی از جداول پیشفرض وردپرس است که اطلاعات مختلفی را در خود ذخیره میکند. سیستم مدیریت محتوای وردپرس محتوای مرتبط با پست را در دو جدول به نامهای wp_posts و wp_postmeta ذخیره میکند.
جدول wp_postmeta چیست؟
جدول پست wp_posts شامل تمام جزییات مرتبط به پست، نویسنده، تاریخ، کلمه عبور، وضعیت و … میشود. جدول متای wp_postmeta دادههای اطلاعاتی اضافی مربوط به پستها را در خود نگه میدارد.
عامل افزایش حجم جدول wp_postmeta
هر متاباکس اضافی که در ویرایشگر پست وردپرس خود مشاهده میکنید دادههایی را به جدول wp_postmeta اضافه خواهد کرد. در زیر برخی از معمولترین این موارد را مشاهده میکنید.
افزونههای سئو مانند متاباکسهای افزونه Rankmath
افزونههای بررسی مانند WP Review
پوستههای پریمیوم که متاباکسهایی را برای تنظیمات لایهبندی و دیگر ویژگیها اضافه میکنند.
فیلدهای سفارشی ساخته شده توسط افزونهها و پوستهها.
اگرچه امکان غیرفعال کردن متاباکسهای ویرایشگر گوتنبرگ وردپرس را دارید اما هنوز هم متاباکسها ردیفهای خود را در جدول wp_postmeta خواهند ساخت.
بررسی اندازه جدول wp_postmeta
به صورت پیشفرض جداول در MySQL یا MariaDB با پسوند _wp ایجاد میشوند. برای مثال، جدول محتوای پست به صورت wp_posts و متای پست به صورت wp_postmeta ذخیره خواهد شد.
دقت داشته باشید که اگر طی مرحله نصب وردپرس خود پیشوند جداول وردپرس را تغییر داده باشید، پیشوند متفاوتی را در پایگاهداده وردپرس خود مشاهده خواهید کرد.
پایگاهدادهای که وردپرس خود را بر روی آن نصب کردهاید را انتخاب کنید و بر روی ستون Size کلیک کنید.
بزرگترین جدول را در ابتدی لیست جداول پایگاهداده وردپرس خود مشاهده خواهید کرد.
همانطور که در تصویر بالا نیز مشاهده میکنید، جدول پست ۲۶.۶ مگابایت حجم به خود اختصاص داده است در حالیکه جدول wp_postmeta حجمی در حدود ۱۰۹.۸ مگابایت دارد.
ساختار جدول wp_postmeta در وردپرس
جدول متای پست یا wp_postmeta چهار فیلد با این ساختار دارد: شناسه متا، شناسه پست، کلید متا و مقادیر متا. برای اینکه دریابید که کدام افزونه ردیفهایی را در جدول ایجاد کرده است بایستی به ستون meta_key توجه کنید.
یافتن علت حجم زیاد جدول wp_postmeta
بسیار مهم است که علت حجم بالای جدول wp_postmeta را بیابیم. همانطوریکه پیشتر نیز توضیح داده شد دلایل زیادی برای این اتفاق وجود دارد.
افزونهها، متاباکسهایی را به ویرایشگر پست وردپرس شما اضافه میکنند؛ مانند کاری که افزونههای سئو انجام میدهند.
افزونههای شبکههای اجتماعی که موارد سفارشی را به هر پست اضافه میکنند.
افزونههای انجمن گفتگو مانند bbPress و افزونههای فروشگاهی مانند ووکامرس.
پوستهها که متاباکسهایی را برای لایهبندی، پسزمینه و تنظیمات مربوط به فرمت اضافه میکنند.
به خاطر داشته باشید که پایگاه داده با اندازه بزرگ مسالهای مانند کندی وبسایت را در پی خواهد داشت.
چگونه افزونههای مختلف، حجم جدول wp_postmeta را افزایش میدهند؟
افزونههای زیادی هستند که ردیفهایی را به جدول wp_postmeta اضافه میکنند.
افزونههای review یا بررسی
یکی از مهمترین دلایلی که افزونههای بررسی Review باعث ایجاد این مساله میشوند، افزودن بیش از ۳۰ ردیف برای هر شناسه پست است. مساله بزرگتر اما این است که این افزونهها ردیفهایی را به هر پست بدون توجه به استفاده از review در آن پست اضافه میکنند.
افزونههای سئو
همین مساله نیز در خصوص افزونههای سئو مانند یوست یا RankMath وجود دارد. به هر روی داشتن توضیحات و عنوان سئو برای هر پست قابل درک و فهم است. اما در خصوص نصب افزونههای سئو بر روی وبسایت و ایجاد متاباکسهای زیاد در پست خود دقت بیشتری داشته باشید.
در صورتیکه میخواهید پایگاهدادهای بهینه داشته باشید همواره سعی کنید که انجمن گفتگو و فروشگاه خود را با وبسایت خبری خود ادغام نکنید. اینکار باعث کاهش سرعت عملکرد وبسایت و افزایش حجم جداول مختلف از جمله جدول wp_posts و wp_postmeta خواهد شد.
برای مثال، افزونه ووکامرس صدها هزار ردیف به جدول wp_postmeta برای دادههای تماس مشتریان، کشور و جزییات سفارشات اضافه خواهد کرد.
پستهای مرتبط و افزونههای شبکه اجتماعی
افزونههای مربوط به ایجاد بخش پستهای مرتبط و شبکههای اجتماعی با ایجاد کوئریهای بزرگ بار سنگینی را به پایگاهداده وبسایت شما تحمیل کرده و باعث کندی وبسایت شما خواهند شد.
بهترین حالت ایجاد پست مرتبط با کمک قابلیتهای خود پوسته مورد استفاده شماست.
پوستههای پریمیوم با متاباکسهای زیاد در ویرایشگر وردپرس
حتی پوستههای کم حجم اما پریمیوم نیز علاقه زیادی به افزودن متاباکسهای زیاد به ویرایشگر وردپرس دارند. این متاباکسها ردیفهایی را به هر پست اضافه خواهند کرد و بر حجم پایگاهداده خواهند افزود.
تصاویر بسیار زیاد
دلیل دیگر برای رشد فزاینده جدول wp_postmeta افزودن تصاویر بسیار زیاد به وبسایت است. وردپرس، متادادههای ضمیمه، جزییات فشردهسازی و جزییات alt tag تصاویر را در جدول wp_postmeta اضافه میکند.
افزونههای فشردهسازی تصویر مانند WP Smush نیز بر بحرانیتر شدن شرایط کمک میکنند. با فعال شدن چنین افزونههایی، جزییات بیشتری به جدول wp_postmeta افزوده خواهد شد.
فیلدهای سفارشی یا custom field
اغلب افزونههای اشاره شده در بالا فیلدهای سفارشی را به وبسایت شما اضافه خواهند کرد. وردپرس این فیلدهای سفارشی را در جدول post_metadata اضافه خواهد کرد. مساله اما این است که حتی با حذف و پاک کردن افزونه، این فیلدهای سفارشی هنوز هم در پایگاهداده وردپرس شما وجود دارند و حذف نخواهند شد.
برای رفع این مساله بایستی به صورت دستی این ردیفها را پاک کنید.
بکآپ پیش از تمیزکاری جدول wp_postmeta
به مانند همیشه پیش از هر اقدام اساسی بر روی وبسایت خود، از آن بکآپ کاملی داشته باشید تا در تمام شرایط راهحل بازگشت به وضعیت پیشین را داشته باشید.
پاکسازی جدول wp_postmeta
پس از اینکه دانستید wp_postmeta چیست و چه اطلاعاتی را در خود نگه میدارد نوبت پاکسازی این جدول رسیده است.
افزونههایی که ردیفهایی را به هر پست وردپرس شما اضافه میکنند را حذف کنید.
از پوستههای کاربردی و ساده برای نمایش محتوای خود استفاده کنید.
حذف ردیفهای ایجاد شده بدون استفاده در جدول wp_postmeta
افزونههایی برای بهینهسازی پایگاهداده مانند WP Optimize و WP Rocket وجود دارند که به شما اجازه پاکسازی پایگاهداده را میدهند. بهرحال هیچ یک از این افزونهها ردیفهای جدول wp_postmeta را از جدول وردپرس شما حذف نخواهند کرد. برای اینکار بایستی مقدار meta_key را به صورت مستقیم در جدول پست متا بررسی کنید.
از کوئری یا پرسوجوی زیر برای فیلتر و یافتن تعداد ردیفهای موجود برای یک کلمه کلیدی مشخص در جدول متا استفاده کنید. کوئری زیر تمام ردیفهایی که توسط افزونه WP Smush ایجاد شده را به شما نمایش میدهد.
SELECT * FROM wp_postmeta WHERE `meta_key` LIKE ‘%smpro%’
همچنین میتوانید از کوئری برای یافتن ردیفهای مربوط به ووکامرس استفاده کنید.
زمانیکه ردیفهای بلااستفاده را در دیتابیس خود یافتید، زمان حذف آنها فرا رسیده است. از کوئری زیر برای حذف تمام ردیفهایی که شامل کلمه کلیدی review هستند استفاده کنید. از کلمه کلید مناسب و مدنظر خود به جای عبارت review برای حذف ردیفها در جدول wp_postmeta استفاده کنید.
DELETE FROM `wp_postmeta` WHERE `meta_key` LIKE ‘%review%’;
اگر احساس میکنید که زمان تغییر پوسته یا افزونه فرارسیده است بنابراین حتما اینکار را انجام دهید. با اینکار از شدت افزایش حجم پایگاه داده وردپرس خود و در نتیجه کندی سرعت آن خواهید کاست.
رتبه الکسا به شما کمک میکند که دریابید وبسایت شما در دستیابی به بازدیدکننده بیشتر تا چه حد موفق بوده است.
رتبه الکسا چیست؟
رتبه السکا، یک سیستم رتبهبندی جهانی است که میلیونها وبسایت را بر اساس درجه محبوبیت رتبهبندی میکند.
رتبهی الکسا بر اساس میزان متوسط بازدید منحصربهفرد روزانه و تعداد pageviewها برای مدت ۳ ماه گذشته سنجیده میشود. هرچه رتبهی الکسا کمتر باشد، وبسایت از محبوبیت بالاتری برخوردار است.
تحلیل رتبه الکسا
الکسا یک سیستم رتبهبندی جهانی (یکی از زیرمجموعههای شرکت Amazon.com) است که از دادههای ترافیک وب برای نمایش لیستی از محبوبترین وبسایتها استفاده میکند.
هرچه رتبه الکسای وبسایت شما پایینتر باشد، وبسایت شما از محبوبیت بیشتری برخوردار است. همچنین در گزارش خود عملکرد وبسایت شما را در مقابل سایر وبسایتها نمایش میدهد.
سیستم رتبهبندی الکسا چگونه کار میکند؟
رتبه الکسا با ترکیبی از تخمین ترافیک وبسایت به علاوه تعامل کاربر در سه ماه گذشته سنجیده میشود. ترافیک و تعامل کاربر نیز از طریق دادههای ارایه شده توسط نوارابزار الکسا Alexa Toolbar میآید. این ابزار بر رفتار کاربر نظارت میکند.
اگر میخواهید جزیی از سیستم رتبه الکسا باشید بایستی تولبار الکسا را برای مرورگر خود دانلود و نصب کنید. این نوار ابزار رتبه الکسا وبسایت بازدید شده را به شما نمایش میدهد. همچنین دادههای ترافیکی را به سرور مرکزی ارسال میکند و نشانی IP شما و نشانی وب بازدید شده را ثبت میکند.
رتبهی الکسا چگونه محاسبه میشود؟
رتبهی الکسا با استفاده از ترکیبی از میانگین بازدید منحصربهفرد روزانه از سایت و تخمین بازدیدهای صفحه سایت طی ۳ ماه گذشته محاسبه میشود.
الگوریتم رتبهبندی الکسا یک سایت را بررسی کرده و تناوب بازدیدها را محاسبه میکند. اگر یک کاربر، وبسایتی را بیش از یکبار در طول روز مشاهده کند، تنها یک بازدید در نظر خواهد گرفت.
این پارامترها برای سنجیدن رتبه سایت بر اساس دو آیتم زیر هستند:
بازدید منحصربهفرد روزانه: ترافیک/تعداد کاربران الکسا که در طول روز از یک سایت بازدید میکنند.
متوسط pageviewها: دفعاتی که یک صفحه مشخص یا نشانی مشخص توسط کاربران الکسا دیده میشوند.
وبسایت با بالاترین ترکیب تعداد بازدیدهای منحصربهفرد و pageview رتبه ۱ الکسا را خواهد داشت.
رتبه الکسا صحیح است؟
اگرچه که رتبهی الکسا میتواند روش خوبی برای مقایسه عملکرد یک وبسایت در مقابل سایت دیگر باشد، اما آمارهای الکسا نیز لزوما دقیق نیستند.
در واقع افرادی که الکسا را در مقابل گوگل آنالیتیکس مقایسه میکنند به این نتیجه خواهند رسید که الکسا دقیق نیست. چرا که گوگل گستره بیشتری از الکسا را پوشش میدهد و احتمالا همه کاربران هم از تولبار الکسا استفاده نمیکنند.
به دلیل پوشش کمتر، با رتبهی الکسا به صورت یک بررسی نه لزوما صحیح از یک وبسایت رفتار میشود.
میتوان رتبه الکسا را دستکاری کرد؟
پاسخ این پرسش مثبت است؛ میتوانید رتبه الکسای وبسایت خود را دستکاری کنید. با ساخت تابع جاوا اسکریپت میتوانید اینکار را انجام دهید و رتبه الکسا وبسایت خود را به شکل مصنوعی افزایش دهید.
البته در نظر داشته باشید که افزایش مصنوعی رتبه الکسا تاکتیکی کوتاه مدت محسوب میشود.
چگونه رتبه الکسا وبسایت خود را مشاهده کنم؟
بررسی رتبه الکسا وبسایت بسیار ساده است. وارد وبسایت الکسا شوید و نشانی وبسایت خود را برای بررسی عملکرد درج کنید.
در صفحه جدیدی که بعد درج نشانی وبسایت و آغاز بررسی به شما نمایش داده میشود میتوانید آمار وبسایت را مشاهده کنید.
مزایا و معایب رتبه الکسا چیست؟
در زیر به مزایا و معایب استفاده از رتبه الکسا اشاره میکنیم.
مزایا:
اگر از طریق تبلیغات درآمد کسب میکنید، رتبه بالای الکسا به شما اجازه میدهد تا تبلیغات بیشتری جذب کنید.
با بررسی وبسایتهای رقیب خود میتوانید تحلیلی سریعی در خصوص جایگاه خود و آنها داشته باشید.
چشمانداز خوبی به شما در خصوص عملکرد وبسایت شما ارایه میدهد که میتواند در زمینه بازاریابی/سئو ابزار مفیدی محسوب شود.
معایب
دادهها تنها به کاربرانی که از ابزار الکسا استفاده میکنند محدود میشود. بنابراین وبسایتهای زیادی هم هستند که رتبه الکسای آنها مناسب نیست اما ترافیک بالایی دارند.
میتوان به آسانی همانطور که اشاره شد دستکاری شود تا رتبه الکسا وبسایت به صورت مصنوعی بالا نشان داده شود.
زیردامنهها به صورت جداگانه رتبهبندی نمیشوند و تنها نشانی اصلی وبسایت در این سیستم رتبهبندی لحاظ میشود.
چگونه رتبه الکسا را بهبود دهیم
میتوانید بدون دستکاری مصنوعی، رتبه الکسا وبسایت را افزایش دهید.
۱. بهینهسازی متادادهها
با افزودن عناوین صفحه و توضیحات متا به پستهای خود به الکسا و البته گوگل خواهید فهمانید که وبسایت شما در چه خصوص فعالیت میکند.
۲. نوشتن محتوایی که کاربران به دنبال آن هستند
جذب افراد به وبسایت با محتوای باکیفیت به دلایل بیشماری مهم است: سئوی وبسایت شما را بهبود خواهد بخشید، کاربران را به وبسایت شما جذب خواهد کرد و به شما اجازه میدهد تا در کلمات کلیدی مهم رتبه خوبی به دست بیاورید.
توجه داشته باشید که در حدود ۷۰% از کاربران اینترنت میخواهند با کمک محتوای موجود بر روی اینترنت در خصوص محصولات اطلاعات کسب کنند.
۳. وبسایت خود را به صورت منظم بهروز کنید
بهروز نگاه داشتن وبسایت با محتوای تازه بهترین استراتژی برای جلب توجه کاربر جدید است. چه وبلاگنویس، توسعهدهنده یا مالک یک کسبوکار کوچک باشید، مهم است که محتوای مفیدی به طور منظم تولید کنید.
۴. به اشتراکگذاری محتوا در شبکههای اجتماعی
نوشتن محتوا برای سایت خوب است اما همچنین بایستی آن را در کانالهای شبکههای اجتماعی مرتبط منتشر کنید. توجه داشته باشید که شبکههای اجتماعی در روز حدود ۳.۲ میلیارد کاربر دارند بنابراین قطعا این بازار، بازاری نیست که بخواهید آن را از دست دهید.
۵. افزایش ترافیک وب
سختترین بخش افزایش ترافیک وبسایت است که یک شبه این اتفاق رخ نخواهد داد. بایستی تلاش و پشتکار زیادی داشته باشید و با رعایت موارد مرتبط با سئو وبسایت خود را به صورت مداوم بهروز نگاه دارید.
۱۰ وبسایت پربازدید با رتبه الکسا بالا در ایران چه وبسایتهایی هستند؟
در زیر لیستی از ۱۰ وبسایت ایرانی که بین کاربران ایرانی دارای بالاترین رتبه الکسا هستند به همراه رتبه جهانی آنها را آوردهایم:
کرون جاب در وردپرس وظیفه زمانبندی کارها را برعهده دارد. اما میتوانید کرون جاب در وردپرس را ویرایش، حذف، اضافه یا به طور کلی غیرفعال کنید. به شما در این آموزش نشان خواهیم داد که چگونه از کرون جاب در وردپرس برای بهبود عملکرد وردپرس خود استفاده کنید.
کرون جاب CRON jobها برای زمانبندی کارها در وردپرس استفاده میشوند. این زمانبندی به صورت ثابت، در تاریخ مشخص یا با فواصل معینی در وردپرس شما تنظیم میشود. برخی از نمونههای کرون جاب در وردپرس عبارتند از زمانبندی انتشار پست، بررسی بهروزرسانیهای افزونه یا اجرای افزونه بکآپ با زمانبندی از پیش تعیین شده.
انجام اینکارها وظیفه کرون جاب در وردپرس است. بهرحال بسته به مقدار ترافیک سایت شما استفاده از این سیستم در حقیقت مدت زمان لازم برای بارگیری صفحات را افزایش خواهد داد. بنابراین با غیرفعال کردن کرون جاب در وردپرس (wp-cron.php) خواهید توانست از سرعت بیشتری بهرهمند شوید و در عوض از سیستم کرون جاب برای عملکرد بهینهتر استفاده کنید.
مسایل ایجاد شده با کرون جاب در وردپرس
ابتدا بهتر است بدانید که کرون جاب در وردپرس در واقع یک کرون جاب cron job نیست؛ و در حقیقت یک تشبیه از کاریست که سیستم کرون انجام میدهد.
WP-Cron به صورت مداوم اجرا نمیشود. به صورت پیشفرض wp-cron.php در هر بار بارگیری هر صفحه اجرا میشود که در وبسایتهایی با ترافیک بالا باعث ایجاد دردسر خواهد شد.
اگر میخواهید لیست کرون جابهای وردپرس خود را مشاهده کنید میتوانید برای اینکار افزونه WP Control را بر روی وردپرس خود نصب و فعال کنید.
بعد از فعالسازی افزونه بایستی از طریق پیشخوان مدیریت > ابزارها به صفحه Cron Events بروید تا لیست کرون جابهای وردپرس خود را مشاهده کنید.
در ستون اول، نام هوک که کرون اجرا میکند را مشاهده میکنید. همچنین در این صفحه میتوانید مشاهده کنید که یک کرون جاب در وردپرس در چه تاریخ بعدی اجرا خواهد شد و فاصلی زمانی بین اجرای بعدی را نیز میتوانید مشاهده و بررسی کنید.
با انتخاب یک کرون جاب در وردپرس میتوانید آن را ویرایش یا حذف کنید. حتما در کار با کرونجابها در وردپرس احتیاط کنید و هیچوقت یک کرون جاب پیشفرض در وردپرس خود را حذف نکنید.
علاوه بر این با کمک این افزونه میتوانید کرون جاب مدنظر خود را در وردپرس ایجاد کنید.
به خاطر داشته باشید که برای کار با کرون جاب در وردپرس بایستی آشنایی کافی با توابع وردپرس و زبان برنامهنویسی PHP داشته باشید.
چگونه کرون جاب در وردپرس را غیرفعال کنیم
برای غیرفعال کردن کرون جاب در وردپرس، خط کد زیر را به فایل wp-config.php وردپرس خود اضافه کنید.
define('DISABLE_WP_CRON', true);
چگونه سیستم کرون را زمانبندی کنیم
حالا که کرون جاب را در وردپرس خود غیرفعال کردید لازم است که wp-cron.php را از طریق سرور زمانبندی کنید.
ساخت کرون جاب
اگر از هاست cPanel استفاده میکنید، برای ساخت یک سیستم کرون بایستی از روی پنل هاست خود اقدام کنید. حتما مطمئن شوید که کرون جاب در وردپرس را به روشی که در ابتدا توضیح داده شد غیرفعال کردهاید.
ابتدا به پیشخوان cPanel خود رفته و در بخش Advanced بر روی Cron Jobs کلیک کنید.
سپس در بخش افزودن کرون جاب جدید، میتوانید از بین زمانبندیهای از پیش تعریف شده موردی را انتخاب کنید؛ مثلا دو بار در ساعت یا یکبار در هفته. معمولا سرویس دهنده هاست محدودیتی را برای اینکه شما قصد اجرای چندبار کرون جاب را دارید در نظر میگیرد. مقدار دوبار در ساعت معمولا مقدار معقولی برای هاستهای اشتراکی محسوب میشود.
در مرحلهی بعد دستور زیر را به کرون جاب ایجاد شده اضافه کنید؛ نام وبسایت خود را جایگزین https://domain.com کنید. در انتها نیز بر روی عبارت Add New Cron Job کلیک کنید.
با استفاده از WebP در وردپرس میتوانید سرعت لود صفحات وردپرس خود را افزایش دهید. به صورت کلی تصاویر در حدود نیمی از اندازاه صفحه را اشغال میکنند بنابراین بهبود حتی ناچیز میتواند نتایج قابلتوجهی در پی داشته باشد.
WebP فرمت جدید برای تصاویر است که میتواند از حجم تصاویر شما بدون تغییر کیفیت بکاهد. بعد از یادگیری و پیادهسازی روشهای معرفی شده در این آموزش، خواهید توانست بدون کاهش کیفیت حدود ۲۵ تا ۳۵ درصد از حجم تصاویر خود را کاهش دهید.
اغلب مرورگرهای جدید و همچنین وردپرس ۵.۸ از WebP پشتیبانی میکنند.
WebP چیست؟
برای استفاده از WebP در وردپرس بایستی ابتدا در خصوص آن اطلاعاتی داشته باشیم. این فرمت جدید توسط گوگل به جهت بهینهسازی بهتر تصاویر ارایه شد.
WebP تصاویر را به مانند فرمتهای محبوب دیگر یعنی JPG و PNG به کاربر نمایش میدهد اما با حجمی به مراتب کمتر. با کاهش حجم تصاویر، همان کیفیت را به کاربران خود ارایه خواهید کرد اما لود سریعتر صفحات را نیز تجربه میکنید.
برای مثال در مطالعه جدید گوگل درباره وضعیت فشردهسازی WebP، نشان داده شد:
۲۵% تا ۳۴% حجم کمتر در مقایسه با فرمت JPEG.
۲۶% حجم کمتر در مقایسه با تصویر PNG.
به همین دلیل یکی از مواردی که در تست سرعت PageSpeed Insights دریافت میکنید، پیشنهاد استفاده از فرمتهای جدید برای تصاویر مانند WebP است.
چه مرورگرهایی از WebP پشتیبانی میکنند؟
برای اینکه از قابلیت WebP استفاده کنید بایستی مرورگر کاربران شما از این فرمت جدید پشتیبانی کنند. متاسفانه هنوز فرمت WebP به صورت سراسری توسط همه مرورگرها پشتیبانی نمیشود.
تصاویر WebP در مرورگرهای زیر پشتیبانی میشود:
کروم (نسخه موبایل و دسکتاپ)
فایرفاکس (نسخه موبایل و دسکتاپ)
اج مایکروسافت
iOS و macOS Safari (تنها در macOS 11 Big Sur و بعد)
اپرا (نسخه موبایل و دسکتاپ)
مرورگر اینترنت اکسپلورر در پشتیبانی از WebP دچار مشکل است؛ هرچند نسخه جدید این مرورگر یعنی Edge به صورت کامل پشتیبانی میکند.
به طور کلی در حدود ۹۵% از کاربران اینترنت از مرورگری استفاده میکنند که از فرمت WebP پشتیبانی میکند. بنابراین برای استفاده از WebP در وردپرس مشکلی نخواهید داشت.
استفاده از WebP در وردپرس
با انتشار وردپرس ۵.۸، شما قادر خواهید بود تا از فرمت WebP به مانند سایر فرمتها استفاده کنید. فقط کافیست تصویر را در بخش رسانههای وردپرس خود بارگذاری کنید و در محتوای خود قرار دهید. از نسخه ۵.۸ به بعد از WebP به صورت پیشفرض پشتیبانی میشود و نیازی به نصب افزونه برای بارگذاری تصاویر WebP نیست.
بهرحال هنوز هم ۵% از کاربران هستند که از مرورگرهایی استفاده میکنند که هنوز از WebP پشتیبانی نمیکند. بنابراین اگر در محتوای خود از فرمت WebP استفاده کنید، این دسته از کاربران تصاویری مشاهده نخواهند کرد.
همچنین بایستی به خاطر داشته باشید که فرمت اصلی گوشیهای هوشمند، دوربینهای عکسبرداری و کتابخانههای آنلاین تصاویر همچنان JPG/JPEG است. از طرفی نیز وردپرس به صورت خودکار قابلیت تبدیل فرمت WebP را ندارد.
بنابراین برای استفاده از WebP در وردپرس بایستی از افزونه وردپرس برای تبدیل تصاویر اصلی به فرمت WebP و همچنین ارایه راهکاری برای کاربرانی استفاده کنید که هنوز مرورگر آنها از این فرمت جدید برای تصاویر پشتیبانی نمیکند.
برای مثال، اگر فایل JPEG را در وبسایت خود بارگذاری کنید، افزونه مورد اشاره اینکار را خواهد کرد:
تبدیل فایل JPEG به فرمت WebP و ارایه فرمت جدید برای مرورگرهای فایرفاکس، کروم، اج و …
نمایش فایل JPEG اصلی برای بازدیدکنندگانی که هنوز از مرورگرهایی استفاده میکنند که از فرمت WebP پشتیبانی نمیکند.
به این صورت همه میتوانند تصاویر محتوای شما را بدون مشکل و به درستی مشاهده کنند.
افزونه ShortPixel
برای استفاده از WebP در وردپرس میتوانید از افزونه ShortPixel استفاده کنید. افزونه ShortPixel یک افزونه بهینهسازی برای تصاویر وردپرس است که به شما در تغییر اندازه خودکار و فشردهسازی تصاویر بارگذاری شده بر روی وردپرس کمک میکند.
از دیگر قابلیتهای ShortPixel تبدیل خودکار تصاویر به WebP و ارایه این فرمت برای مرورگرهایی است که از آن پشتیبانی میکنند.
البته به خاطر داشته باشید که افزونه ShortPixel در نسخه رایگان خود امکان بهینهسازی ۱۰۰ تصویر در ماه را در اختیار شما قرار میدهد و دارای پلنهای پولی برای بهینهسازیهای بیشتر است.
برای استفاده از افزونه ShortPixel پس از نصب و فعالسازی بایستی به اکانت خود بر روی ShortPixel متصل شوید.
برای استفاده از تصاویر WebP با کمک این افزونه بایستی به تب Advanced بروید و:
گزینه WebP Images را فعال کنید.
گزینه Deliver the WebP versions… را فعال کنید.
گزینه Using the <PICTURE> tag syntax را فعال کنید.
مطمئن شوید که گزینه Only via WordPress hooks selection فعال باشد.
تغییرات ایجاد شده را با کلیک بر روی دکمه ذخیرهسازی، ذخیره کنید.
افزونه Imagify
یکی دیگر از محبوبترین افزونههای بهینهسازی تصاویر بر روی وردپرس که از طرف ناشر افزونه WP Rocket ارایه میشود Imagify است. یکی دیگر از روشهای استفاده از WebP بر روی وردپرس استفاده از این افزونه است.
این افزونه تصاویر بارگذاری شده بر روی وردپرس شما را به صورت خودکار تغییر اندازه میدهد. سپس به شما کمک میکند تا آنها را به WebP تبدیل کنید و نسخه جدید را در اختیار کاربرانی قرار دهید که از این فرمت در مرورگرشان پشتیبانی میشود.
به صورت کلی افزونههای ShortPixel و Imagify مشابهتهای زیادی دارند. مهمترین تفاوت در پلنهای پولی این دو است. افزونه ShortPixel پلنهای خود را بر اساس تصاویر و نه حجم تصاویر در نظر گرفته در حالیکه افزونه Imagify پلنهای خود را بر اساس حجم کلی فایل در نظر میگیرد.
بنابراین اگر قصد بهینهسازی تصاویر بزرگ را در وبسایت خود دارید استفاده از افزونه ShortPixel مقرونبهصرفهتر است اما اگر قصد بهینهسازی بسیاری تصاویر با حجم کم را دارید، استفاده از افزونه Imagify توصیه میشود.
برای فعالسازی تصاویر WebP به بخش Optimization و بخش WebP مراجعه کنید.
گزینه Create webp version of images را فعال کنید.
گزینه Display images in webp format… را فعال کنید.
گزینه use <picture> tags را انتخاب کنید.
افزونه Optimole
یکی دیگر از افزونههای خوب برای استفاده از WebP در وردپرس استفاده از Optimole است. شیوه عملکرد افزونه Optimole اندکی با شیوه کارکرد دو افزونه دیگر که معرفی شد متفاوت است. Optimole قابلیت فشردهسازی و تغییر اندازه تصاویر را به صورت خودکار دارد. دو ویژگی خوب دیگر در این افزونه وجود دارد:
امکان ارایه تصاویر از طریق CDN وجود دارد.
قابلیت ارایه تصاویر بهینه شده بر اساس مرورگر کاربر را دارد. برای مثال، کاربری که از طریق یک صفحه نمایش کوچک وبسایت شما را مشاهده میکند، تصویری با کیفیت مناسب همان اندازه صفحه نمایش را دریافت خواهد کرد.
به مانند دو افزونه دیگر، Optimole نیز پلنهای پولی دارد که برای بهینهسازی تصاویر بیشتر بایستی از این پلنها استفاده کنید.
انتخاب بهترین افزونه افزایش سرعت سایت وردپرس گاهی بسیار پیچیده میشود. برای افزایش سرعت وردپرس بایستی از افزونههای کش وردپرس استفاده کنید. استفاده از افزونههای کش نیز مزایا و معایب خود را دارد.
مزایای استفاده از افزونه کش برای افزایش سرعت سایت وردپرس
جدای از اینکه از کش سمت سرور استفاده میکنید یا خیر، همیشه نیاز به پیادهسازی افزونه کش بر روی وبسایت خود خواهید داشت:
افزایش سرعت بارگیری سایت برای کاربران – دلیل اصلی استفاده از افزونه افزایش سرعت سایت نیز همین مساله است.
بهبود تجربه کاربری – از آنجایی که به واسطه استفاده از افزونه کش، سرعت وبسایت نیز افزایش مییابد در نتیجه کاربر تمایل بیشتری به مرور صفحات بر روی وبسایت شما خواهد داشت و بانس ریت صفحات نیز کاهش پیدا خواهد کرد.
به سرور وبسایت فشار کمتری وارد میشود – استفاده از منابع کمتر به واسطه استفاده از افزونه کش وردپرس باعث فشار کمتر بر وب سرور خواهد شد. این مساله به جهت حفظ در دسترس بودن وبسایت بسیار حائز اهمیت است.
افزایش ورودی از گوگل – وقتیکه تجربه کاربری بهتری را به کاربر خود ارایه میدهید در نتیجه خواهید دید که گوگل نیز برای صفحات وبسایت شما ارزش و اهمیت بیشتری قائل خواهد شد.
بهترین افزونه افزایش سرعت سایت
در زیر لیستی از بهترین افزونههای کش برای وردپرس لیست شده و در ادامه به خصوصیات و امتیازات هم افزونه میپردازیم.
افزونه WP Rocket
افزونه لایت اسپید
افزونه W3 Total Cache
افزونه WP Super Cache
افزونه WP Fastest Cache
افزونه WP Rocket
افزونه کش WP Rocket یک افزونه پولی و غیر رایگان برای وردپرس است. یکی از دلایل محبوبیت افزونه راکت وردپرس، ساده بودن رابط کاربری و امکان پیکربندی سریع افزونه کش است. با توجه به نوع سرور، افزونه راکت وردپرس میتوانید بهترین افزونه افزایش سرعت سایت باشد.
افزونه WP Rocket به خوبی با وبسایتهای فروشگاهی سازگاری دارد و باعث بهبود سرعت صفحات فروشگاه خواهد شد.
مزایای استفاده از افزونه کش WP Rocket
رابط کاربری ساده و جذاب که کار را برای کاربران تازهکار راحت کرده است.
مراحل پیکربندی ابتدایی بسیار ساده برای همه کاربران.
بهینهسازی پایگاهداده از جمله پاکسازی پایگاهداده و حذف موارد نالازم.
lazyload کردن رسانهها بر روی وردپرس با افزونه کش راکت وردپرس به سادگی صورت میگیرد.
با CloudFlare سازگاری کامل دارد تا باعث افزایش سرعت بیشتر وبسایت شود.
با افزونههای چندزبانگی برای وردپرس به خوبی و بدون مشکل کار میکند.
میتوانید از قابلیت کش preload استفاده کنید.
از object caching پشتیبانی میکند.
افزونه کش لایت اسپید LiteSpeed Cache
امکانات زیاد و رایگان بودن افزونه کش لایت اسپید، آن را به بهترین افزونه افزایش سرعت وبسایت بدل کرده است. افزونه LiteSpeed Cache یکی از محبوبترین افزونههای رایگان وردپرس محسوب میشود.
معمولا استفاده از افزونه کش لایت اسپید برای وبسرورهای لایت اسپید توصیه میشود که باعث سازگاری حداکثری خواهد شد. با کمک دهها تنظیم ریز و درشت در صفحه پیکربندی افزونه لایت اسپید میتوانید باعث افزایش سرعت سایت خود شوید.
افزونه کش W3 Total Cache
یکی از محبوبترین افزونههای کش وردپرس و افزونه افزایش سرعت سایت، افزونه W3 Total Cache است. این افزونه رایگان، متنباز است و میلیونها نصب نیز بر روی وردپرس کاربران انجام شده است.
مزیت سازگاری کامل با CDN را دارد و به خوبی برای وبسایتهای ریسپانسیو نیز عمل میکند. این افزونه گزینههایی نیز برای افزایش و بهبود سرعت سایتهای فروشگاهی نیز در خود دارد.
مزایای استفاده از افزونه W3 Total Cache:
افزونه W3 Total Cache رایگان است و تقریبا تمامی امکانات سایر افزونههای کش را در خود دارد.
میلیونها نصب موفق و دیدگاه مثبت برای افزونه W3 Total Cache ثبت شده است.
این افزونه با تمام انواع هاست از جمله سرورهای اختصاصی و اشتراکی سازگاری کامل دارد.
عمل کش بدون مشکل برای محیطهای موبایل اجرا میشود.
از SSL برای بارگیری سریعتر فروشگاه پشتیبانی میشود.
با CDN برای به کارگیری رسانهها سازگاری دارد.
از Object Caching پشتیبانی میشود.
افزونه WP Super Cache
یکی دیگر از مجموعهی بهترین افزونه افزایش سرعت سایت، افزونه WP Super Cache است. اگر در مخزن وردپرس به دنبال افزونه افزایش سرعت سایت باشید، افزونه WP Super Cache و W3 Total Cache دو نتیجه ابتدایی در لیست نتایج جستجو خواهند بود.
یکی از مزایای افزونه WP Super Cache ارایه چند روش برای پیادهسازی کش بر روی وبسایت است. حالت ساده، انتخاب غالب کاربران وردپرس است و حداقل ریسک با انجام این وضعیت پیش روی شما خواهد بود. در وضعیت پیشرفته، قادر به کش وبسایت با تغییراتی در فایل htaccess خواهید بود. برای توسعهدهندگان حرفهای که قصد کنترل کامل را دارند این وضعیت بهترین حالت میتواند باشد.
از مزایای افزونه WP Super Cache میتوان به موارد زیر اشاره کرد:
محبوبت WP Super Cache به دلیل رایگان بودن، متن باز بودن و اصیل بودن آن است چرا که از سمت Automattic منتشر شده است؛ همان مجموعهای که وردپرس را تولید کرده و توسعه میدهد. بنابراین خیالتان از بابت سازگاری و بهروز بودن همواره راحت است.
بخشی در افزونه با عنوان garbage collection در نظر گرفته شده است تا فایلهای قدیمی از کش پاک شوند.
افزونه WP Super Cache با تنظیمات CDN سازگاری کاملی دارد.
افزونه WP Fastest Cache
افزونه WP Fastest Cache در بین لیست بهترین افزونه افزایش سرعت سایت قرار دارد و در تنظیمات خود به مانند سایر افزونههای کش است و تفاوتی ندارد اما برخی ویژگیهای منحصربهفرد در خود دارد که آن را به یک افزونه کش مناسب در بین تمام وبسایتها بدل کرده است.
این افزونه هم نسخه رایگان و هم نسخه پولی دارد که برخی از امکانات در نسخه پریمیوم و غیر رایگان قابل استفاده هستند.
امکاناتی مانند کش مرورگر یا GZIP، کش دسکتاپ، فشردهسازی HTML، و ترکیب JS و CSS در نسخه رایگان ارایه شدهاند.
افزونههای خوب و رایگان دیگری مانند Comet Cache یا Hyper Cache نیز هستند که امکانات خوبی را در اختیار شما قرار میدهند.
به صورت کلی بنا به نوع وبسرور مورد استفاده شما برای وبسایت بهترین افزونه افزایش سرعت سایت میتواند افزونه WP Rocket راکت وردپرس یا افزونه لایت اسپید کش Litespeed Cache باشد.
در نوشته حاضر به شما توضیح میدهیم که چگونه با افزایش سرعت سایت وردپرس خود بتوانید به جایگاه بهتری در موتورهای جستجو و رضایتمندی بهتر و بیشتر در بین کاربران دست یابید.
انتخاب هاست باکیفیت برای وردپرس
هاست شما، فضایی است که تمام دادههای وبسایت شما در آنجا ذخیره میشود؛ از جمله تصاویر، محتوا، ویدیوها و … که بر روی هاست شما قرار میگیرند. هاستهای مختلفی برای میزبانی وردپرس وجود دارد که هر یک مزایا و معایب خود را دارند و انتخاب یک هاست مناسب تاثیر قابل توجهی بر افزایش سرعت سایت شما خواهد گذارد.
هاست اشتراکی وردپرس (Shared WordPress Host)
محبوبترین نوع هاست وردپرس به نام هاست اشتراکی است. تقریبا تمام ارایهدهندگان هاست در ایران، خدمات هاست اشتراکی را ارایه میکنند و در واقع جز اولین خدمات آنها محسوب میشود. محیط مدیریت این نوع هاستها نیز معمولا cPanel یا دایرکت ادمین است و هزینه خدمات هاست اشتراکی از ۲۰۰ هزار تومان تا ۲ میلیون تومان در سال بنا به مقدار فضا و سایر مشخصات هاست اشتراکی متغیر است.
تقریبا هر فردی که از هاست اشتراکی استفاده میکند به نوعی در نقطهای کندی سرعت را تجربه خواهد کرد. اما چرا؟ به این دلیل که شرکتهای ارایه دهنده خدمات هاست اشتراکی معمولا علاقهمندند فضای سرور خود را برای افراد زیادی به اشتراک بگذارند که به نوبه خود بر عملکرد سایت شما تاثیر منفی خواهد گذارد. خطای ۵۰۰ و سایر خطاهای سمت سرور معمولا در نتیجه این محدودیات است. از آنجاییکه در هاست اشتراکی معمولا گاهی بیش از ۲۰۰ وبسایت بر روی یک سرور قرار میگیرند؛ هر اتفاقی در یکی از وبسایتها میتواند بر عملکرد و کیفیت وبسایت شما نیز تاثیر بگذارد.
بهرحال هر طوریکه حساب کنید مبلغ کمتر از ۲۰ هزار تومان در ماه که شما برای یک هاست اشتراکی میپردازید درآمدی برای شرکت ارایه دهنده خدمات هاست محسوب نمیشود؛ مخصوصا وقتی خدمات پشتیبانی را هم به آن اضافه کنید.
راه برونرفت از این مساله استفاده از هاستهای ابری و یا حتی بهتر استفاده از هاست اختصاصی است که در این مدل مدیریت فایل فضا و امکانات یک سرور در اختیار وبسایت شما قرار میگیرد و مشخصا هزینه چنین پلنهای بالا است.
استفاده از PHP 7 یا نسخههای بالاتر برای افزایش سرعت سایت
PHP یک زبان برنامهنویسی سمت سرور و متنباز است که برای توسعه محیط وب ارایه شده است. سیستم مدیریت محتوای وردپرس و افزونهها و پوستههای آن به زبان PHP نوشته شدهاند از این رو این زبان برنامهنویسی در جامعه وردپرس بسیار اهمیت دارد. بایستی اطمینان یابید که هاست شما از جدیدترین نسخه PHP پشتیبانی میکند.
نسخههای متفاوتی از PHP وجود دارد که هاست شما آنها را در اختیارتان قرار میدهد؛ جدیدترین نسخه ۸ است که عملکرد بسیار بهینهتری نسبت به نسخههای پیشین خود دارد. در واقع نسخه ۷.۳ نسبت به نسخه ۵.۶ امکان مدیریت ۳ برابر درخواست بیشتر در ثانیه را دارید، PHP 7.4 نیز از نسخه ۷.۳ سریعتر است. انتخاب بهترین نسخه از PHP باعث افزایش سرعت سایت شما خواهد شد.
پشتیبانی هاست از HTTP/2
HTTP/2 پروتکلی است که در سال ۲۰۱۵ برای افزایش سرعت سایت معرفی شد. استفاده از این پروتکل نیازمند SSL است. اگر هاست وبسایت شما از HTTP/2 پشتیبانی نمیکند بهتر است که به دنبال ارایهدهنده دیگری باشید.
سرور نزدیک به بازدیدکنندگان برابر با افزایش سرعت سایت
یکی از اولین مسایلی که بایستی بررسی درباره آن صورت دهید این است که بازدیدکنندگان یا مشتریان شما از کجا میآیند. موقعیت هاست وبسایت شما عامل مهمی در تعیین میزان تاخیر در شبکه محسوب میشود که همچنین بر سرعت داشبورد مدیریت وردپرس تاثیر میگذارد.
اهمیت انتخاب پوسته مناسب برای وردپرس
هرکسی عاشق پوسته یا قالب جدید وردپرس است اما بایستی مراقب این پوستههای جذاب نیز باشید. هر عنصری که در پوسته مشاهده میکنید تاثیری بر سرعت وبسایت شما خواهد گذارد. از این رو بهتر است در انتخاب پوسته یکی از دو مسیر زیر را انتخاب کنید:
یک پوسته کمحجم و سبک وردپرس که تنها ویژگیهایی که به آن نیازمندید را در خود دارد.
یک پوسته وردپرس با امکانات زیاد که امکان غیرفعال کردن ویژگیهای خود را که شما به آنها نیازی ندارید میدهد.
مواردی مانند فونتهای گوگل Google Fonts، آیکنهای Font Awesome، اسلایدرها، گالریها، ویدیو و اسکریپتهای پارالکس و … اینها تنها مواردی از دسته عناصری هستند که بایستی قادر به خاموش کردن آنها در صورت عدم استفاده از آنها باشید.
احتیاط در استفاده از صفحهسازها
برخی از صفحهسازها (المنتور، ویژوال کامپوزر و …) ممکن است که مدت زمان بارگیری وبسایت شما را افزایش دهند. این اتفاق به این دلیل است که فایلهای CSS و JS اضافی را برای اینکه کارهایی بدون کدنویسی رخ دهد به صفحه شما اضافه میکنند؛ معجزه صفحهسازها نیز به همین دلیل است.
وقتیکه خودتان را در یک صفحهساز محصور میکنید مطمئن شوید که محصولی را انتخاب میکنید که به شکل مداوم بهرزورسانی میشود و تمام امکاناتی که مدنظرتان دارید را در خود جای داده باشد و گزاره افزایش سرعت سایت را تحت شعاع قرار ندهد.
با این همه مزایای استفاده از صفحهسازهایی مانند المنتور را نیز نمیتوان نادیده گرفت.
بنبست افزونههای وردپرس
احتمالا قبلا شنیدهاید که به جهت افزایش سرعت سایت وردپرس خود نبایستی افزونه یا پلاگینهای وردپرس زیادی روی وبسایت خود نصب کنید. هرچند گفتهای درست است اما در واقع عاملی حیاتی نیز محسوب نمیشود. تعداد افزونهها به اندازه میزان کیفیت افزونهها مهم نیستند؛ یعنی بایستی افزونههایی را انتخاب کنید که از کیفیت بالایی برخوردار باشند.
درست به مانند پوستهها، مهم است که افزونه به چه شکلی توسعه یافته و چه قابلیتهایی دارد. هرچند که افزودن کد به وبسایت راهحل بهتری از بسیاری جهت از جمله افزایش سرعت سایت است اما همیشه شدنی نیست:
بایستی کد را خودتان نگهداری و بهروزرسانی کنید و با تغییر استانداردها در زبان برنامهنویسی نیز تغییرات را خودتان اعمال کنید.
اغلب اوقات افزونهای که به درستی نوشته شده باشد حتی بهتر از کدی که شما نوشتهاید بهینه خواهد بود.
بهرحال یکی از مواردی که کاربران در خصوص وردپرس میپسندند لیست بلندبالا و تنوع بینظیر افزونههای رایگان وردپرس بر روی WordPress.org است.
مساله مهم درباره افزونههای وردپرس
مساله مهم و بزرگ درباره افزونههای وردپرس، روند حذف آنها است. هروقت که افزونه یا پوستهای را بر روی وردپرس خود نصب میکنید، دادههایی را در پایگاه داده شما ذخیره میکند. مشکل اما از زمانی شروع میشود که میخواهید افزونه را با استفاده از روشی استاندارد حذف کنید که در این روش استاندارد معمولا جداول و ردیفهایی که در پایگاه داده وردپرس شما ایجاد شده است نادیده گرفته میشود. با گذشت زمان، دادههای زیادی به پایگاه داده وبسایت شما اضافه میشود و باعث کندی سرعت وبسایت شما خواهد شد.
گذشته از اتفاقی که به واسطه نصب و حذف افزونه وردپرس برای پایگاه داده وبسایت شما رخ میدهد، بسیاری از افزونهها پوشهها و فایلهایی را بعد از حذف همچنان باقی میگذارند؛ نمونه این اتفاق بعد از حذف افزونههای کش مانند راکت وردپرس و لایت اسپید رخ میدهد.
اما چرا توسعهدهندگان افزونه اینکار را مرتکب میشوند؟
دلایل مختلفی برای رخداد چنین اتفاقی وجود دارد. اما مهمترین آنها عبارتند از:
میخواهند تنظیمات را همچنان برای کاربر حفظ کنند. اگر افزونه وردپرس را حذف کنید و تصمیم به نصب مجدد آن بگیرید، تمام تنظیمات و دادههای شما هنوز هم باقی خواهد بود. در حالیکه اینکار بسیار کاربرپسند است اما قطعا رها کردن فایل، پوشه و جداول در پایگاه داده وبسایت کاربر روش درستی برای اینکار نیست.
اهمیتی به عملکرد نمیدهند. برخی از توسعهدهندگان معتقدند که رها کردن جداول و ردیفها در پایگاه داده تاثیری بر عملکرد نخواهد گذارد. اما وبسایتی را بعد از ده سال در نظر داشته باشید که از صدها افزونه وردپرس استفاده کرده باشد و در نتیجه هزاران ردیف و جدول بلااستفاده نیز به همین واسطه تولید کرده باشد. بدون شک کوئریهای پایگاه داده تاثیر مهمی بر عملکرد وبسایت شما خواهند گذارد و افزونهها نیز نقش اصلی را در این بازی ایفا میکنند.
مرتکب اشتباه میشوند. معمولا توسعهدهندگان تازهکار در استفاده از هوک غیرفعالسازی در افزونه دچار اشتباه میشوند.
تنظیمات بهینه وردپرس
تنظیماتی در وردپرس وجود دارد که باعث افزایش سرعت سایت خواهند شد.
تغییر نشانی لاگین وردپرس
به صورت پیشفرض نشانی لاگین به وردپرس domain.com/wp-admin است. یکی از مشکلات این نشانی امکان حملات هکرها و اجرای اسکریپتهایی است که با علم به این نشانی اتفاق میافتد. با تغییر این نشانی میتوانید خود را کمتر در معرض خطر قرار دهید و از خود به شکل بهتری در مقابل حملاتی مانند بروت فورس محافظت کنید و از این طریق از حجم پهنای باند مصرفی خود بکاهید.
با تغییر نشانی لاگین به وردپرس میتوانید از خطاهایی مانند خطای ۴۲۹ Too Many Requests جلوگیری کنید.
برای مخفی کردن و تغییر نشانی لاگین به وردپرس از دو افزونه زیر استفاده کنید:
غیرفعال کردن یا تغییر وضعیت بهروزرسان افزونه و پوسته وردپرس
پیشخوان مدیریت کند وردپرس میتواند ناشی از مسایلی در شبکه، موقعیت دیتاسنتر، و حتی نسخه PHP باشد که بر روی وبسایت خود از آن استفاده میکنید. اما عامل دیگری که بسیاری از کاربران وردپرس برای افزایش سرعت سایت خود به آن توجه نمیکنند، سیستم بهروزرسان وردپرس است که در پسزمینه وردپرس شما در جریان است. زمانیکه از افزونه و پوستههای زیادی بر روی وبسایت خود استفاده میکنید، این فرایند میتواند مخرب باشد.
مشکل از آنجایی شروع میشود که بهروزرسان خودکار وردپرس درخواست GET را در پسزمینه ارسال میکند. برخی اوقات این درخواست دورهای یا خیلی مداوم میشود.
اگر پیشخوان کند دارید حتما امتحانی کنید و بهروزرسان خودکار را غیرفعال کنید. البته حواستان باشد که بسیاری از بهروزرسانیها برای حل مشکلات امنیتی و رفع باگ ارایه میشوند بنابراین بعد از غیرفعال کردن بهروزرسان خودکار بایستی حواستان به بهرورسانیها باشد.
برای غیرفعال کردن بهروزرسان خودکار از افزونههای زیر میتوانید استفاده کنید:
Easy Updates Manager: امکانات بیشتری را برای کنترل بهروزرسانیها در اختیار شما قرار میدهد و نسخه اصلی رایگان است.
غیرفعال کردن Pingback در وردپرس
pingback روش درج دیدگاه خودکار است که زمانی ایجاد میشود که وبسایت دیگر لینکی به نوشته شما بدهد. این اتفاق میتواند به دلیل لینکدهی داخلی بین نوشتههای وبسایت شما نیز رخ دهد.
برای افزایش سرعت سایت این قابلیت را غیرفعال کنید چرا که کوئریهای بیموردی را ایجاد میکند.
غیرفعال کردن پینگبک Pingback از وبسایتهای دیگر
در پیشخوان مدیریت وردپرس خود به منوی تنظیمات و سپس گفتگو بروید. در تنظیمات گفتگو، گزینه «اجازه داده به دیگر وبلاگها برای آگاهسازی پیوندی (بازتابها و دنبالکها) روی نوشتههای تازه» را غیرفعال کنید.
محدود کردن تعداد نوشتهها در وبلاگ
چه وبلاگ خود را بر روی صفحه اصلی تنظیم کرده باشید یا اینکه بخشی از صفحه اصلی را به نوشتهها اختصاص دادهاید، محدودیت را مشخص کنید. مخصوصا اگر وبلاگی با ترافیک بالا را میچرخانید مدیریت تعداد نوشتهها کاری مهم در جهت افزایش سرعت سایت محسوب میشود.
ابداع صفحهبندی یا pagination نیز در همین راستا بوده است. pagination چیزی است که معمولا در پایان پستها با عبارت بعدی یا قبلی مشاهده میکنید.
به صورت پیشفرض وردپرس محدودیت ۱۰ را برای نوشتهها در نظر میگیرد. برای تنظیم این قابلیت به بخش تنظیمات -> خواندن بروید.
چرا کش وبسایت خیلی مهم است
استفاده از کش وبسایت یکی از مهمترین و آسانترین روشها برای افزایش سرعت سایت وردپرس شماست. اما پیش از آنکه به شما نشان دهیم که چگونه از کش استفاده کنید، مهم است که چگونگی عملکرد و انواع مختلف کش در دسترس برای وردپرس را بررسی کنیم.
کش Caching چیست؟
به شکل خلاصه، هر صفحهای از وبسایت شما که دیده میشود نیازمند ارسال یک درخواست به سمت سرور وبسایت شماست. این درخواست در سمت سرور پردازش شده و نهایتا نتیجه از سرور به مرورگر کاربر بازمیگردد.
برای مثال، در وبسایت خود هدر، تصویر و یک منو و یک وبلاگ دارید. از آنجاییکه سرور بایستی تمام آن درخواستها را پردازش کند، تکمیل این درخواست اندکی زمان میبرد مخصوصا در صورتیکه وبسایت بزرگ و پرمحتوایی باشد.
اینجا جاییست که افزونههای کش وردپرس وارد میشوند. افزونه کش به سرور میگوید که برخی از فایلها را بر روی دیسک یا RAM ذخیره کند. بنابراین با اینکار میتواند همان محتوا را دوباره داپلیکیت کند. با اینکار از حجم کار لازم برای ایجاد یک page view خواهد کاست. در نتیجه صفحه وبسایت شما با کمک افزونه کش وردپرس خیلی سریعتر به نمایش در میآید.
از مزایای دیگر افزونه کش وردپرس میتوان به دو مورد زیر نیز اشاره کرد:
سرور وبسایت شما از منابع کمتری استفاده میکند – استفاده کمتر از منابع برابر است با وبسایتی سریعتر. این قضیه مخصوصا زمانیکه از هاست اشتراکی استفاده میکنید بسیار حیاتی است.
TTFB کمتری خواهید داشت – استفاده از کش یکی از سادهترین روشها برای پایین آوردن TTFB است (TTFB: زمان سررسید اولین بایت).
انواع کش وردپرس
به دو شکل میتوان از امکانات سیستم کش بر روی وردپرس برای افزایش سرعت سایت استفاده کرد:
کش سمت سرور
کش با استفاده از افزونه وردپرس
۱. کش در سمت سرور
کش سمت سرور یکی از سادهترین روشها برای کاربران محسوب میشود. بدین معنا که ارایه دهنده خدمات هاست وردپرس شما اینکار را انجام میدهد.
۲. کش با استفاده از افزونه وردپرس
برای استفاده از مزایای کش همچنین میتوانید از افزونههای وردپرس برای اینکار استفاده کنید. از معروفترین این افزونهها افزونه رایگان کش litespeed و W3 Total Cache و افزونه پولی WP Rocket است.
بهینهسازی تصویر
در مطلب بهینهسازی عکس در وردپرس به شکل مفصل در خصوص بهینهسازی تصاویر توضیح دادیم. بهینهسازی تصاویر به شکل قابلی توجهی تاثیر مثبت بر بهینهسازی مدت زمان لازم برای بارگیری صفحه و در نتیجه افزایش سرعت سایت خواهد شد.
تصاویر بزرگ، صفحات وبسایت شما را کند میکنند و تجربه بدی را برای کاربران به ارمغان میآورند.
طبق گفته HTTP Archive تا سال ۲۰۱۹، تصاویر ۳۴% از کل وزن صفحات را به خود اختصاص میدادند.
بهینهسازی پایگاهداده وردپرس
پایگاهداده وردپرس شما جایی است که اطلاعات وبسایت شما در آنجا ذخیره میشود. این پایگاهداده به مرور زمان بزرگتر شده و نیاز به بهینهسازی پیدا میکند. بهینهسازی پایگاهداده چه به شکل دستی یا از طریق افزونه باعث افزایش سرعت سایت شما خواهد شد.
حذف و محدودیت بازبینیهای صفحه و پست
هر زمانیکه صفحه یا نوشتهای را در وردپرس ذخیره میکنید، چیزی به نام revision یا بازبینی ایجاد میشود. این اتفاق هم برای نوشتههای منتشر شده و هم برای پیشنویس رخ میدهد. بازبینیهای وردپرس در مواقعی که قصد بازگردانی محتوا را دارید مفید هستند.
البته این بازبینیها از طرف دیگر میتوانند به عملکرد وبسایت شما ضربه بزنند و در مقابلِ امکان افزایش سرعت سایت شما قرار بگیرند. در وبسایتهای بزرگ این بازبینیها به سرعت افزوده شده و هزاران ردیف را در پایگاهداده به خود اختصاص میدهند که در واقع نیازی به آنها نیست. هرچه تعداد ردیفها بیشتر باشد، پایگاهداده شما نیز اندازه بزرگتری خواهد داشت.
۱. حذف بازبینیهای قدیمی
اگر وبسایت وردپرس قدیمی با صفحات و نوشتههای زیادی دارد، ممکن است دیگر زمان آن فرا رسیده باشد که اقدام به تمیزکاری و حذف بازبینیهای قدیمی کنید. اینکار را میتوانید از طریق MySQL انجام دهید اما توصیه ما این است که از افزونههای کاربری وردپرس در این زمینه مانند WP-Sweep استفاده کنید.
راه دیگر حذف این بازبینیهای قدیمی استفاده از افزونه محبوب WP Rocket است که قابلیت بهینهسازی پایگاهداده آن چنین قابلیتی را در خود جای داده است.
۲. محدود کردن بازبینیها
استراتژی خوب دیگر محدود کردن تعداد بازبینیها در وردپرس است، میتوانید تعداد این بازبینیها را بر روی ده تنظیم کنید. برای محدودسازی بازبینیها، میتوانید تکه کد زیر را در فایل wp-config.php وبسایت خود وارد کنید. کد زیر بایستی بالاتر از ABSPATH باشد وگرنه کار نخواهد کرد. میتوانید تعداد بازبینیها را به هر رقمی که مدنظر خود دارید تغییر دهید.
define('WP_POST_REVISIONS, 10);
۳. غیرفعال کردن بازبینیها
آخرین راهحل غیرفعال کردن بازبینیهای نوشتهها در وبسایت است. اگر میخواهید از این روش استفاده کنید به شدت توصیه میکنیم بعد از غیرفعال کردن بازبینیها اقدام به پاک کردن آنها با روشی که گفته شد کنید تا پایگاهداده شما عاری از هر گونه بازبینی باشد.
برای غیرفعال کردن قابلیت بازبینی در وردپرس، فایل wp-config.php خود را در ویرایشگر کد باز کنید و سپس خط کد زیر را پیش از ABSPATH وارد کنید:
define('WP_POST_REVISIONS', false);
پاکسازی جدول wp_options و دادههای وارد شده به شکل خودکار
برای افزایش سرعت سایت در وردپرس، جدول wp_options اغلب اوقات نادیده گرفته میشود. مخصوصا در وبسایتهای قدیمی و بزرگ این نادیده گرفتن به دلیل استفاده بیش از اندازه از افزونهها و پوستهها به مرور زمان گران تمام میشود.
جدول wp_options شامل تمام انواع دادههایی برای سایت وردپرس شماست مانند:
نشانی وبسایت، نشانی خانه، آدرس ایمیل، دستهبندی پیشفرض، پست در صفحه، فرمت زمان و …
تنظیمات افزونهها، پوستهها و ابزارکها
دادههای موقتا کش شده
این جدول شامل فیلدهای زیر میباشد:
option_id
option_name
option_value
autoload (وقتی صحبت از افزایش سرعت سایت میشود، این گزینه برای ما مهم است)
یکی از مهمترین روشها برای افزایش سرعت سایت توجه به جدول wp_options در وردپرس و فیلد autoload است. این فیلد میتواند حاوی مقدار yes یا no باشد. این فیلد در اصل کنترل میکند که گزینه مربوطه توسط تابع wp_load_alloptions بارگیری شود یا خیر. دادههای autoload شده دادههایی هستند که در هر صفحهای از وردپرس شما بارگیری میشوند. این گزینه به صورت پیشفرض برای توسعهدهندگان با yes تنظیم میشود اما هر افزونهای نبایستی در تمام صفحات وبسایت شما بارگیری شود.
مشکل وبسایتهای وردپرس این است که بهرحال زمانی با حجم بالایی از دادههای autoload شده در جدول wp_options روبرو میشویم.
یه نمونه خوب افزونه فرم تماس است. آیا لازم است که دادههای این افزونه در تمام صفحات وبسایت بارگیری شوند یا اینکه تنها در صفحه تماس لازم است؟
افزونهها یا پوستههایی که از وردپرس شما حذف میشوند اما هنوز در جدول wp_options وبسایت شما حضور دارند. این به معنای autoload غیرضروری دادهها در وبسایت شما است.
توسعهدهندگان افزونه و پوسته، دادههای خود را در جدول wp_options قرار میدهند به جای اینکه جدول خودشان را داشته باشند.
از CDN استفاده کنیم
CDN مخفف عبارت شبکه ارایه محتوا است. این شبکه مجموعهای از سرورهایی مستقر در تمام کشورها است. این سرورها برای میزبانی و ارایه کپیهایی از وبسایت طراحی شدهاند؛ محتواهایی شامل تصاویر، CSS، جاوا اسکریپت و استریمهای ویدیویی.
برای استفاده از خدمات CDN بایستی با شرکتهای ارایهدهنده هاست و چنین خدماتی گفتگو کنید. استفاده از چنین فناوری باعث افزایش سرعت سایت شما به شکل قابل توجهی خواهد شد.
Ajax فناوری وب مبتنی بر جاوا اسکریپت است که به شما در ساخت وبسایتهای تعاملی و پویا کمک میکند. وردپرس هم از طریق admin-ajax.php از Ajax برای قدرت بخشیدن به بسیاری از ویژگیهای اصلی و مدیریت خود مانند قابلیت ذخیره خودکار نوشتهها، مدیریت نشست کاربر و اعلانات بهره میگیرد.
به صورت پیشفرض وردپرس تمام فراخوانیهای Ajax را از طریق فایلی به نام admin-ajax.php که در پوشه wp-admin قرار دارد صورت میدهد.
درخواستهای بیشمار همزمان Ajax میتواند منجربه استفاده بیش از اندازه admin-ajax.php شود که خود این اتفاق منجربه کند شدن بیش از اندازه وبسایت و سرور خواهد شد. یکی از مهمترین مشکلاتی که بسیاری از وبسایتهای وردپرس غیربهینه با آن دست و پنجه نرم میکنند. در نهایت این اتفاق منجربه کندی وبسایت یا خطای HTTP 5xx (بیشتر خطای ۵۰۲ و ۵۰۴) میشود.
در این نوشته به شما اطلاعات بیشتری در خصوص عملکرد و نحوه رفتار admin-ajax.php نشان خواهیم داد و اینکه چطور میشود مسایل استفاده مربوط به admin-ajax.php را رفع کرد.
فایل admin-ajax.php چیست؟
فایل admin-ajax.php شامل کدهایی برای مسیریابی درخواستهای Ajax در وردپرس به شمار میرود. هدف اصلی آن برقراری ارتباط بین مشتری و سرور با استفاده از Ajax است. وردپرس از این فایل برای نو کردن محتوای صفحه بدون بارگذاری دوباره آن استفاده میکند که به این طریق باعث افزایش کیفیت پویایی محتوا و تجربه بهتر کاربر خواهد شد.
هسته وردپرس از Ajax برای توانمندسازی ویژگیهای بکاند استفاده میکند. برای استفاده از این قابلیت در وردپرس تنها کاری که نیاز است انجام دهید این است که یک action در وردپرس خود ثبت کنید که به فایل admin-ajax.php در وبسایت شما اشاره دارد و تعریف کنید که میخواهید چگونه مقدار بازگشت داده شود.
می توانید تعداد درخواستهای admin-ajax.php را در تب DevTools مرورگر کروم خود نیز مشاهده کنید. همچنین می توانید از طریق تب Timing در بخش Network ببینید که این پردازش این درخواستها چقدر به طول میانجامد.
برای یافتن دلیل استفاده زیاد از admin-ajax.php بایستی دو بخش را بررسی کنید: بخش فرانتاند وبسایت و بخش بکاند وبسایت.
چگونه استفاده زیاد admin-ajax.php در وردپرس را بررسی کنم
افزونههای نصب شده بر روی وردپرس یکی از معمولترین دلایل پشت استفاده بیش از اندازه از admin-ajax.php هستند. نوعا این مساله در بخش فرانتاند وبسایت دیده میشود و به شکل مداوم در گزارشات تست سرعت وردپرس نیز وجود دارد.
اما علاوه بر افزونهها، پوسته وردپرس، هسته وردپرس، مشکلات وبسرور و حملات DDoS نیز میتواند باعث استفاده زیاد admin-ajax.php در وردپرس شود.
چگونه منشا استفاده زیاد admin-ajax.php برای افزونهها و پوستهها را بیابم
توسعهدهندگان معمولا از Ajax برای ساخت افزونههای پویا و تعاملی و پوستهها استفاده میکنند. نمونهای از موارد استفاده شده از admin-ajax.php: جستجوی زنده، فیلترهای محصولات، اسکرول بینهایت، سبد خرید پویا و جعبه گفتگو.
اما چون یک افزونه از Ajax استفاده میکند در نتیجه وبسایت شما به همین دلیل کند شده است.
معمولا admin-ajax.php در پایان بارگیری صفحه بارگیری میشود. همچنین میتواند طوری تنظیم کنید که درخواستهای Ajax به صورت ناهمزمان بارگیری شوند تا تاثیر ناچیزی بر عملکرد صفحه داشته باشند. وقتیکه توسعهدهندگان از Ajax به صورت درست در وردپرس استفاده نمیکنند، اینکار میتواند باعث ایجاد مسایل و مشکلات گوناگون عملکردی برای وبسایت شود.
میتوانید از GTmetrix برای کاوش بیشتر در این خصوص استفاده کنید و علت مشکل را بیابید. برای اینکار بایستی از تب Waterfall در گزارش استفاده کرده و سپس بر روی آیتم admin-ajax.php کلیک کنید.
بررسی درخواستهای Post و Response میتواند راهنمای خوبی برای شما باشد و از این طریق بتوانید دلیل اصلی پشت این اتفاق را بیابید.
با جستجوی کوتاهی در این خصوص به نتایجی در وبسایت سازنده پوسته هم احتمالا خواهید رسید. از این رو میتوانید اینطور نتیجه بگیرید که این مشکل از پوسته یا یکی از افزونههای ضروری همراه آن نشات میگیرد.
در چنین مواردی بایستی ابتدا اطمینان یابید که پوسته و افزونههای ضروری همراه آن به آخرین نسخه بهروزرسانی شده باشند. اگر این کار باعث حل مشکل نشد، سپس بایستی یک به یک اقدام به غیرفعالسازی پوسته و افزونه بر روی وردپرس خود کنید تا ببینید که آیا مشکل حل میشود یا خیر.
برخلاف غیرفعالسازی افزونه، غیرفعالسازی پوسته در اغلب مواقع شدنی نیست. از این رو تلاش کنید که پوسته خود را بهینه کنید. برای اینکار میتوانید از کمک تیم پشتیبانی بهره بگیرید.
چگونه از منشا استفاده زیاد admin-ajax.php باخبر شویم
برخی اوقات، دادههای Post و Response در گزارشات تست سرعت ممکن است که شفاف و روشن نباشد. از این رو یافتن منشا استفاده زیاد admin-ajax.php به این آسانیها نیست. در چنین مواردی همیشه روشهای قدیمی میتواند کارگر باشد.
همه افزونههای سایت خود را غیرفعال کرده، کش وبسایت خود را در صورت وجود پاک کنید و تست سرعت را دوباره اجرا کنید. اگر همچنان admin-ajax.php وجود داشت، از این رو احتمالا مشکل از پوسته شما است. اما اگر این مشکل از بین رفت بنابراین ایراد از یکی از افزونههای فعال بر روی وبسایت شما ناشی میشود.
استفاده از محیط تست یکی از بهترین روشها برای اجرای تست بر روی وبسایت بدون تاثیرگذاری بر روی وبسایت زنده است. وقتیکه از نتایج اطمینان یافتید و مساله را حل کردید میتوانید تغییرات را بر روی وبسایت زنده خود نیز اعمال کنید.
بررسی مسایل مربوط به بکاند با admin-ajax.php
دومین دلیل شایع استفاده زیاد از admin-ajax.php تولید مداوم Heartbeat API و فراخوانی admin-ajax.php است که منجربه استفاده زیاد CPU سرور خواهد شد. نوعا، این اتفاق به دلیل لاگین کاربران بسیاری به پیشخوان مدیریت وردپرس رخ میدهد. از این رو این مساله را نمیتوان در تست سرعت وردپرس مشاهده کنید.
به صورت پیشفرض Heartbeat API هر ۱۵ ثانیه فایل admin-ajax.php را برای ذخیره خودکار نوشته و صفحات فرامیخواند. اگر از سرورهای اشتراکی استفاده میکنید بنابراین منابع زیادی بر روی سرور ندارید. اگر نوشته یا صفحهای را ویرایش میکنید و صفحه یا نوشته را برای مدت زیادی باز نگاه دارید اینکار باعث درخواستهای فزاینده Admin Ajax میشود.
برای مثال، وقتیکه پست یا صفحهای را ویرایش کرده یا مینویسید، طی یک ساعت درخواستها به ۲۴۰ بار خواهد رسید.
این تعداد درخواست بر روی بکاند وبسایت آن هم از جانب یک کاربر، درخواست بسیار زیادی محسوب میشود. حالا تصور کنید که این وبسایت چندین ویرایشگر به صورت همزمان داشته باشد. چنین وبسایتی درخواستهای Ajax بسیار زیادی تولید میکند که منجربه استفاده زیاد از منابع سرور اشتراکی به خصوص CPU میشود.
خود وردپرس مساله Heartbeat API را به مرور زمان بهینه کرده است. برای مثال، میتوانید تناوب درخواستهای ایجاد شده توسط Heartbeat API بر روی میزبان با منابع محدود را بکاهید. همچنین پس از یک ساعت با غیرفعال بودن ماوس یا کیبورد کاربر، این قابلیت غیرفعال میشود.
ترافیک بالا به دلیل حمله DDoS یا باتهای اسپم
اگر وبسایتتان تحت حمله DDoS باشد یا باتهای اسپم نیز زیاد باشند این اتفاق میتواند منجربه استفاده زیاد از admin-ajax.php شود. هرچند چنین حملاتی لزوما باعث افزایش درخواستهای Admin Ajax نخواهد شد بلکه باعث صدمه ثانوی میشود.
اگر وبسایت شما تحت حمله DDoS باشد، حتما بایستی به فکر استفاده از یک CDN بهینه مانند کلودفلر باشبد.