خلاصه مقاله:
استفاده از لودینگ مناسب میتواند به بهبود نرخ پرش کمک کند که یکی از فاکتورهای مهم در سئو است. همچنین با بهبود تجربه کاربری، زمان حضور کاربر در سایت افزایش مییابد و کاهش ترک سایت بعلت تصور خرابی سایت
منطق لودینگ | ساخت لودینگ سایت | ابزار های ساخت |
المنتور | افزونه | کدنویسی |
آموزش ساخت لودینگ سایت
امروز میخواهیم در مورد «ساخت لودینگ برای سایت» صحبت کنیم و سه روش مختلف برای ایجاد یه انیمیشن بارگذاری جذاب رو بررسی کنیم. لودینگ یا همان پیشبارگذاری یه صفحه باعث میشه کاربر بدونه سایت در حال لود شدنه و منتظر بمونه تا صفحه اصلی نمایش داده بشه. این موضوع هم از نظر تجربه کاربری مهمه و هم از نظر ظاهر سایت بهشدت تأثیرگذار هست 😊.
چرا به لودینگ نیاز داریم؟
وقتی کاربر سایت رو باز میکنه، ممکنه چند ثانیه طول بکشه تا محتوا لود بشه. اگر صفحهی سفید ساده بیاد و هیچ پیغامی مبنی بر در حال لود بودن نباشه، ممکنه کاربر فکر کنه سایت مشکل داره و زود بستهش کنه. بنابراین اضافه کردن یه انیمیشن لودینگ باعث میشه کاربر بدونه یه چیزی در حال آمادهسازیه و کمی بیشتر صبر کنه.
- احتمال تصور خرابی سایت از سمت کاربر
طراحی لودینگ سایت
استفاده از افزونهPreloader
اولین راهکار اینه که از افزونههای آماده استفاده کنیم؛ مثل افزونه “Preloader”. برای این کار کافیه توی مخزن وردپرس سرچ کنید پلاگین پریلودر و افزونه رو نصب و فعال کنید. این افزونه یه سری المان و قالب آماده برای لودینگ داره که فقط با چند کلیک میتونید انتخاب کنید و روی سایتتون نمایش بدید.
مزایا:
- سریع و راحت
- چندین طرح از پیشتعریفشده داره
- معایب:
- نصب افزونه جدید ممکنه سرعت سایت رو کم کنه
- ممکنه با قالب یا افزونههای دیگه تداخل داشته باشه
- منابع اضافی روی سرور مصرف میکنه
لودینگ المنتور
اگه سایتتون با المنتور ساخته شده، میتونید بدون افزونه اضافی یه لودینگ جذاب بسازید. کافیه وارد یک برگه بشید، روی «ویرایش با المنتور» کلیک کنید. وقتی المنتور باز شد، از گوشهی پایین سمت راست روی آیکون چرخدنده (تنظیمات) بزنید و بعد سه نقطه (همبرگری) رو انتخاب کنید تا وارد تنظیمات سایت بشید.
تو این بخش، گزینه «انتقال صفحهها» یا «Page Transitions» رو پیدا کنید. اینجا میتونید رنگ پسزمینه لودینگ رو انتخاب کنید (مثلاً سفید، مشکی یا رنگ سازمانی خودتون)، انیمیشن ورودی رو مشخص کنید، و نوع آیکون یا تصویر لودینگ رو تعیین کنید. المنتور چند انیمیشن پیشفرض داره
مزایا:
- بدون نصب افزونه اضافی
- کنترل کامل روی رنگ و انیمیشن
- سبک و کمحجم
- معایب:
- فقط برای سایتهایی که با المنتور ساخته شدند مناسب هست
- امکانات محدودتر نسبت به پلاگینهای حرفهای
لودینگ متحرک باکد
اگر میخواید کاملاً اختصاصی کار کنید و هیچ افزونه یا صفحهساز اضافه نداشته باشید، میتونید «ساخت لودینگ برای سایت» رو با کدنویسی انجام بدید. برای این کار باید یک سری کد CSS و JavaScript داخل قالب function یا افزونه wpcode دلخواهتون قرار بدید.
کد به این صورت عمل میکنه که در ابتدا یه صفحه سفید با نوشته «لودینگ Loading» و انیمیشنی محو شونده نمایش میده. وقتی محتوای اصلی لود شد، جاوااسکریپت، انیمیشن لودینگ رو مخفی میکنه تا صفحه اصلی نشون داده بشه.
نکته مهم: اگه از افزونههایی مثل WP Rocket برای بهینهسازی استفاده میکنید، باید دو ID مربوط به لودینگ (skeleton-loader-script) رو تو بخش «تاخیر اجرای جاوااسکریپت» استثنا قرار بدید تا لودینگ بهدرستی مخفی بشه بعد از لود شدن صفحه. در غیر این صورت ممکنه انیمیشن هیچوقت مخفی نسه تا وقتی کاربر روی سایت تعامل داشته باشه.
اخرین جدول بخش بهینه سازی فایل بذارید: skeleton-loader-script
/* * اسکلت لودینگ ترکیبی با انیمیشن متنی LOADING * سازگار با WP Rocket و المنتور، قابل تنظیم از طریق WPCode * نسخه سبک با ساختار سایت و انیمیشن سریع */ /* تنظیمات پیشفرض */ $skeleton_settings = array( 'enable' => true, // فعال/غیرفعال کردن لودینگ 'animation_speed' => 0.8, // سرعت انیمیشن (ثانیه) 'bg_color' => '#f1f1f1', // رنگ پسزمینه اسکلت 'highlight_color' => '#e0e0e0' // رنگ هایلایت اسکلت ); /* دریافت تنظیمات از WPCode Variables */ if (function_exists('wpcode_get_option')) { $skeleton_settings = wp_parse_args( wpcode_get_option('skeleton_settings', array()), $skeleton_settings ); } /* افزودن استایل و اسکریپت */ if ($skeleton_settings['enable']) { add_action('wp_head', function() use ($skeleton_settings) { ?> <style id="site-skeleton-css"> .skeleton-loader{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;background:#fff;padding:15px;box-sizing:border-box;display:flex;flex-direction:column;gap:15px;transition:opacity .3s ease-out,visibility .3s ease-out;} .skeleton-item{background:linear-gradient(90deg,<?php echo esc_attr($skeleton_settings['bg_color']); ?> 25%,<?php echo esc_attr($skeleton_settings['highlight_color']); ?> 50%,<?php echo esc_attr($skeleton_settings['bg_color']); ?> 75%);background-size:400% 100%;animation:shimmer <?php echo floatval($skeleton_settings['animation_speed']); ?>s infinite;border-radius:6px;} @keyframes shimmer{0%{background-position:100% 50%;}100%{background-position:0% 50%;}} .skeleton-header{height:70px;width:100%;max-width:1200px;margin:0 auto;} .skeleton-title{height:30px;width:60%;max-width:600px;margin:0 auto;} .skeleton-content{height:16px;width:80%;max-width:800px;margin:0 auto;} .skeleton-content.short{width:50%;max-width:500px;} .skeleton-image{height:200px;width:100%;max-width:800px;margin:0 auto;} .skeleton-footer{height:60px;width:100%;max-width:1200px;margin:0 auto;} .loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.875rem;letter-spacing:.1em;white-space:nowrap;font-family:"Inter",sans-serif;} .loading span{animation:blur 1.5s calc(var(--i)/7*1s) alternate infinite;} @keyframes blur{to{filter:blur(5px);}} @media (max-width:768px){ .skeleton-header{height:50px;} .skeleton-title{width:80%;height:24px;} .skeleton-content{width:90%;} .skeleton-image{height:150px;} .skeleton-footer{height:40px;} .loading{font-size:1.5rem;} } </style> <div class="skeleton-loader"> <div class="skeleton-item skeleton-header"></div> <div class="skeleton-item skeleton-title"></div> <div class="skeleton-item skeleton-content"></div> <div class="skeleton-item skeleton-content short"></div> <div class="skeleton-item skeleton-image"></div> <div class="skeleton-item skeleton-content"></div> <div class="skeleton-item skeleton-footer"></div> <div class="loading"> <span style="--i:0">L</span> <span style="--i:1">O</span> <span style="--i:2">A</span> <span style="--i:3">D</span> <span style="--i:4">I</span> <span style="--i:5">N</span> <span style="--i:6">G</span> </div> </div> <script defer id="skeleton-loader-script"> document.documentElement.classList.add("loading-active"); window.addEventListener('load',()=>{const e=document.querySelector('.skeleton-loader');if(e){e.style.opacity='0';e.style.visibility='hidden';setTimeout(()=>{e.remove();document.documentElement.classList.remove("loading-active");},<?php echo (int)($skeleton_settings['animation_speed'] * 1000); ?>);}}); setTimeout(()=>{const e=document.querySelector('.skeleton-loader');if(e){e.remove();document.documentElement.classList.remove("loading-active");}},2500); </script> <?php }); }
مزایا:
- کاملاً سفارشی و سبک
- بدون نیاز به نصب افزونه اضافی
- قابلیت تنظیم دلخواه برای هر بخش
اموزش های رایکان بیشتر : طراحی سایت شرکتی
سؤالات متداول درباره ساخت لودینگ برای سایت
لودینگ یا پیشبارگذاری برای سایتهای با محتوای سنگین مناسب است. این قابلیت به کاربران نشان میدهد که سایت در حال بارگذاری است . بهخصوص در سایتهای با سرعت بارگذاری کندتر.
ساخت لودینگ برای سایت باعث کاهش نرخ خروج کاربران میشود. وقتی کاربر میبیند که سایت در حال بارگذاری است، صبر بیشتری میکند و احتمال ترک سایت کاهش مییابد.
بله، استفاده از لودینگ مناسب میتواند به بهبود نرخ پرش (Bounce Rate) کمک کند که یکی از فاکتورهای مهم در سئو است. همچنین با بهبود تجربه کاربری، زمان حضور کاربر در سایت افزایش مییابد
یک پاسخ
عالی بود😊⬆️