যদি আপনার পৃষ্ঠা Elementor যদি এটি প্রদর্শিত হতে ৪ থেকে ৮ সেকেন্ড সময় নেয়, কিন্তু সার্ভার “লোড হয়নি বলে মনে হয়”, তাহলে সম্ভবত আপনি একটি ফ্রন্ট-এন্ড সমস্যার সম্মুখীন হচ্ছেন: যেমন অতিরিক্ত অ্যাসেট, অতিরিক্ত উইজেট, অতিরিক্ত ফন্ট, অথবা এমন কোনো ক্যাশে যা আপনার ধারণা অনুযায়ী ডেটা সরবরাহ করছে না।
সমস্যা
“স্লো এলিমেন্টর”-এর সবচেয়ে হতাশাজনক দিকটি হলো যে প্রায়শই aucune একটি দৃশ্যমান ত্রুটি। কখনও কখনও, আপনি কনসোল বা লগগুলিতে এখনও সংকেত দেখতে পান।
ব্রাউজার-সাইডের সাধারণ বার্তাগুলির উদাহরণ (কনসোল / নেটওয়ার্ক):
Failed to load resource: the server responded with a status of 404 (Not Found) /wp-content/uploads/elementor/css/post-1234.css
[Violation] 'click' handler took 287ms
Uncaught TypeError: Cannot read properties of undefined (reading 'hooks')
যেখানে এটি দেখা যায়:
- সামনে শেষ দীর্ঘ লোডিং সময়, ধীরগতির ইন্টারঅ্যাকশন, দুর্বল সিএলএস/এলসিপি, এবং ছবি লাফিয়ে ওঠে।
- এলিমেন্টর এডিটর ল্যাগিং প্যানেল, ধীরগতির প্রিভিউ, সেভ গেম ঘুরতে থাকা। (প্রায়শই সম্পর্কিত, কিন্তু সবসময় নয়।)
- একটি আপডেটের পরে এলিমেন্টর / বিষয় ক্যাশিং প্লাগইন, অথবা পিএইচপি ৮.১+ এ আপগ্রেড করা।
- একটি প্লাগইন সক্রিয় করার পরে এলিমেন্টর অ্যাড-অন, পপআপ, ট্র্যাকিং, চ্যাট, এ/বি টেস্টিং।
এই নির্দেশিকাটি কাদের জন্য: ব্লগার এবং ডেভেলপার ওয়ার্ডপ্রেস মধ্যম স্তরের ব্যবহারকারী (ওয়ার্ডপ্রেস ৬.৯.৪, পিএইচপি ৮.১+) যারা এলিমেন্টর ব্যবহার করেন (এবং প্রায়শই সাইটের অন্য কোথাও হ্যালো, অ্যাস্ট্রা, বা আভাডা/ডিভি-ধরনের থিম ব্যবহার করেন)। পরিশেষে, আপনি জানতে পারবেন কীভাবে বিচ্ছিন্ন করতে হয়। কারণ (শুধু “অপ্টিমাইজ” নয়), প্রেরিত CSS/JS-এর পরিমাণ কমান, এবং এডিটরের কার্যকারিতা নষ্ট না করেই LCP/INP উন্নত করুন।
দ্রুত সারসংক্ষেপ
- প্রথমে পরিমাপ করুন LCP/INP/CLS + নেটওয়ার্ক ওয়াটারফল, অন্যথায় আপনি এলোমেলোভাবে অপ্টিমাইজ করেন।
- সবচেয়ে ঘন ঘন অতিরিক্ত CSS/JS (উইজেট ও অ্যাড-অন), ভারী ফন্ট/আইকন, অ্যানিমেশন, থার্ড-পার্টি স্ক্রিপ্ট।
- এডিটরটি ভাঙবেন না। যেকোনো অপ্টিমাইজেশন অবশ্যই বাদ দিতে হবে
is_admin()এবং এলিমেন্টর কনটেক্সট। - CSS এলিমেন্টর 404 ত্রুটিগুলি পরিচালনা করুন CSS পুনর্জন্ম + অনুমতি + ক্যাশে + Nginx/Apache নিয়মাবলী।
- আচ্ছাদন পেজ ক্যাশ + ওপক্যাশ + এইচটিটিপি/২/৩ + কম্প্রেশন। এগুলো ছাড়া এলিমেন্টর কিছুই "সেভ" করবে না।
- বৈধতা প্রতিটি পরিবর্তনের পর, ক্যাশে (প্লাগইন + সিডিএন + ব্রাউজার) মুছে ফেলুন এবং প্রাইভেট ব্রাউজিংয়ে পুনরায় পরীক্ষা করুন।
লক্ষণগুলো
সবচেয়ে সাধারণ থেকে সবচেয়ে সুনির্দিষ্ট পর্যন্ত, আপনি যা পর্যবেক্ষণ করতে পারেন:
- উচ্চ এলসিপি (প্রায়শই ৩ সেকেন্ডের বেশি): মূল বিষয়বস্তু দেরিতে আসে (হিরো, ছবি, শিরোনাম)।
- উচ্চ আইএনপি ক্লিক এবং স্ক্রোলিং জনপ্রিয় হয়ে উঠছে, বিশেষ করে মোবাইলে।
- অনেক অনুরোধ একটি ক্লাস্টার সহ ১২০-৩০০টি কোয়েরি
/wp-content/uploads/elementor/css/post-XXXX.css. - বিশাল CSS প্রতি পৃষ্ঠায় ২০০–৮০০ কিলোবাইট আকারের একটি (বা একাধিক) CSS Elementor ফাইল।
- তৃতীয় পক্ষের জেএস চ্যাট, পিক্সেল, হিটম্যাপ, এমবেড যা থ্রেডকে ব্লক করে।
- বিশ্বাস/অপবিত্র অদৃশ্য টেক্সট তারপর হঠাৎ ভেসে ওঠে (গুগল ফন্ট, অ্যাডোবি ফন্ট, ইত্যাদি)।
- জেনারেট করা CSS-এ 404 সাইটটি ১-২ সেকেন্ডের জন্য কোনো ফরম্যাটিং ছাড়াই লোড হয়, তারপর পুনরায় ফরম্যাটিং প্রয়োগ করে (অথবা কখনোই করে না)।
- স্থানীয় এবং উৎপাদিতের মধ্যে পার্থক্য : দ্রুত লোকাল, ধীর প্রোটিডি (সিডিএন, ক্যাশে, মিনিফিকেশন, সার্ভার রুলস)।
- ক্যাশে প্লাগইন দ্বন্দ্ব মিনিফাইড JS ইন্টারঅ্যাক্টিভিটি নষ্ট করে (কনসোল এরর), অথবা সংযুক্ত CSS লেআউট এলোমেলো করে দেয়।
রোগ নির্ণয় সারণী (দ্রুত)
| লক্ষণ | সম্ভাব্য কারণ | প্রতিপাদন | সমাধান |
|---|---|---|---|
| এলিমেন্টর পেজে LCP > 3s | ইমেজ হিরো ভারী এবং ব্লকিং CSS/JS | ডেভটুলস > পারফরম্যান্স + নেটওয়ার্ক (ওয়াটারফল) | ইমেজ অপ্টিমাইজ করুন, থার্ড-পার্টি JS বিলম্বিত করুন, CSS/উইজেট হ্রাস করুন। |
| দুর্বল INP (ধীর ক্লিক) | তৃতীয় পক্ষের জাভাস্ক্রিপ্ট + অ্যানিমেশন + অনেক বেশি লিসেনার | ডেভটুলস > পারফরম্যান্স (প্রধান থ্রেড) | অ্যাড-অন নিষ্ক্রিয় করুন, অ্যানিমেশন সীমিত করুন, স্ক্রিপ্ট স্থগিত করুন |
| post-XXXX.css-এ 404 ত্রুটি | CSS পুনরায় তৈরি করা হয়নি / ক্যাশে / অনুমতি | নেটওয়ার্ক > “পোস্ট-” ফিল্টার + HTTP স্ট্যাটাস | CSS পুনরায় তৈরি করুন, অনুমতি পরীক্ষা করুন, ক্যাশে/CDN পরিষ্কার করুন। |
| ধীরগতির এলিমেন্টর এডিটর | ভারী অ্যাডমিন প্লাগইন + পিএইচপি মেমরি | কোয়েরি মনিটর + সাইট হেলথ + পিএইচপি লগ | প্লাগইন নিষ্ক্রিয় করুন, মেমরি বাড়ান, ত্রুটিগুলি ঠিক করুন |
| লগ ইন না করা থাকলে সাইটটি দ্রুত চলে, লগ ইন করা থাকলে ধীর চলে। | লগ ইন করা ব্যবহারকারীদের জন্য ক্যাশে বাইপাস | ক্যাশে করা হেডার এবং TTFB তুলনা করুন | ব্যাক-অফিস অপ্টিমাইজ করুন, অবজেক্ট ক্যাশে ব্যবহার করুন, হুকস কমান |
এমনটা কেন ঘটে?
সহজ কথায়: এলিমেন্টর আপনার পেজটি অনেকগুলো বিল্ডিং ব্লক দিয়ে তৈরি করে। প্রতিটি ব্লকে CSS, JS, ফন্ট, আইকন এবং অ্যানিমেশন যোগ করা যায়। সবশেষে, ব্রাউজার বেশি সময় ব্যয় করে... ডাউনলোড এবং বিশেষ করে গণনা করুন (স্টাইল/লেআউট/জেএস) প্রদর্শনের চেয়ে।
নেপথ্যে যা ঘটছে তা এখানে দেওয়া হলো (ওয়ার্ডপ্রেস ৬.৯.৪ / পিএইচপি ৮.১+):
- সম্পদ অনুসন্ধান এলিমেন্টর এবং এর অ্যাড-অনগুলি কল করে
wp_enqueue_script()/wp_enqueue_style()সব জায়গায় সবকিছু লোড করা হলে, আপনাকে প্রতিটি পৃষ্ঠায় তার মূল্য দিতে হয়। - প্রতি পৃষ্ঠার জন্য CSS তৈরি করা হয়েছে এলিমেন্টর CSS ফাইলগুলো লেখে
wp-content/uploads/elementor/css/ভুলভাবে কনফিগার করা ক্যাশে/সিডিএন অথবা ত্রুটিপূর্ণ পারমিশনের কারণে ৪০৪ এরর বা ধীরগতির রিভ্যালিডেশন ঘটে। - প্রধান থ্রেডে JS স্লাইডার, পপআপ, মোশন এফেক্ট এবং "মার্কেটিং" উইজেটগুলো দীর্ঘ কাজ তৈরি করে, যা INP-এর কার্যক্ষমতা হ্রাস করে।
- ফন্ট এবং আইকন ফন্ট অসম (Font Awesome) বেশ ব্যাপক, গুগল ফন্টস (Google Fonts) একাধিক বৈচিত্র্য প্রদান করে, এবং এদের মধ্যে তেমন কোনো বাস্তব সুবিধা নেই। আমি প্রায়শই দেখেছি যে এলিমেন্টর (Elementor) কিটে শুধু অন্তর্ভুক্ত থাকার কারণেই ৬টি ফন্ট ফ্যামিলি এবং ১২টি ওয়েট (weight) দেওয়া হয়।
- আক্রমণাত্মক ক্ষুদ্রকরণ কিছু প্লাগইন জাভাস্ক্রিপ্ট একত্রিত করে বা সরিয়ে ফেলে এবং এক্সিকিউশনের ক্রম নষ্ট করে দেয় (কনসোল এরর)। ফলে: পেজটি "লোড" হলেও, ধীরগতির হয়ে যায় অথবা আংশিকভাবে ত্রুটিপূর্ণ হয়ে পড়ে।
সবচেয়ে সাধারণ থেকে বিরলতম পর্যন্ত তালিকাভুক্ত কারণসমূহ:
- অতিরিক্ত উইজেট/অ্যাড-অন (এলিমেন্টর অ্যাডঅনস, এসেনশিয়াল অ্যাডঅনস, ইত্যাদি) যেগুলো গ্লোবাল অ্যাসেট লোড করে।
- ফন্ট/আইকন অনিয়ন্ত্রিত + অ্যানিমেশন।
- খারাপভাবে সামঞ্জস্য করা কভার (পেজ ক্যাশে নেই, ক্যাশে বাইপাস করা হয়েছে, পার্জ অসম্পূর্ণ, সিডিএন পুরোনো সিএসএস পরিবেশন করছে)।
- ৪০৪/অনুমতি এলিমেন্টর দ্বারা তৈরি CSS এর উপর ভিত্তি করে।
- তৃতীয় পক্ষের স্ক্রিপ্ট (GTM, pixels, cat) যেগুলো প্রধান থ্রেডে প্রাধান্য বিস্তার করে।
- সংঘাতের বিষয়বস্তু (Avada/Divi/Elementor মিশ্র): দ্বৈত CSS/JS ফ্রেমওয়ার্ক।
- সার্ভার OPcache অনুপস্থিত, HTTP/2 নিষ্ক্রিয়, উচ্চ TTFB, ধীরগতির ডিস্ক, CPU সীমাবদ্ধতা।
শুরু করার পূর্বশর্তসমূহ
কোড বা সেটিংস স্পর্শ করার আগে:
- রক্ষা (ফাইল + ডেটাবেস)। একটি এলিমেন্টর সাইটে CSS পূর্বাবস্থায় ফিরিয়ে আনা বেশ ঝামেলার হতে পারে।
- উপস্থাপনকারী যদি সম্ভব হয়। কোনো সুরক্ষা ব্যবস্থা ছাড়া প্রোডাকশন এনভায়রনমেন্টে টেস্টিং করা একটি চিরাচরিত ভুল... এবং এর পরিণতি প্রায়শই হয় দিনের মাঝপথে একটি CSS ফাইল নষ্ট হয়ে যাওয়া।
- সংস্করণ ওয়ার্ডপ্রেস ৬.৯.৪, পিএইচপি ৮.১+ (আদর্শগতভাবে ৮.২/৮.৩, যদি আপনার হোস্টিং প্রোভাইডার সমর্থন করে), হালনাগাদ এলিমেন্টর।
- টুলস :
- অনুসন্ধান মনিটর (ডায়াগনস্টিক হুক, স্ক্রিপ্ট, অনুরোধ)।
- স্বাস্থ্য পরীক্ষা ও সমস্যা সমাধান (শুধুমাত্র নিজের জন্য প্লাগইনগুলি নিষ্ক্রিয় করুন)।
- ক্রোম ডেভটুলস (পারফরম্যান্স + নেটওয়ার্ক) অথবা সমতুল্য ফায়ারফক্স।
ডিবাগিং সঠিকভাবে (অস্থায়ীভাবে) চালু করুন wp-config.php :
<?php
// wp-config.php (extrait) — WordPress 6.9.4+
// Activez temporairement sur staging, pas sur production publique.
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false); // Évite d’afficher les erreurs aux visiteurs
@ini_set('display_errors', '0');
তথ্যসূত্র: ওয়ার্ডপ্রেস ডিবাগ করুন (developer.wordpress.org).
সমাধান ১: এলিমেন্টরে কম CSS/JS লোড করুন (এডিটর নষ্ট না করে)
যখন এলিমেন্টর “ধীরগতির” মনে হয়, আমি প্রায় সবসময়ই প্রথমে কোনো স্ক্রিপ্ট বা স্টাইল লোড হয়েছে কিনা তা পরীক্ষা করে দেখি। সর্বত্র যদিও সেগুলো শুধু একটি পৃষ্ঠাতেই কাজ করে। এর জন্য মূলত অ্যাড-অনগুলোই দায়ী।
লক্ষণ
- DevTools > নেটওয়ার্ক খুলুন, দ্বারা ফিল্টার করুন সিএসএস তারপর JS.
- যেসব পেজ এই উইজেটগুলো ব্যবহার করে না, সেগুলোতে লোড হওয়া পুনরাবৃত্তিমূলক হ্যান্ডেলগুলো (প্রায়শই অ্যাড-অন ফাইল) শনাক্ত করুন।
- কোয়েরি মনিটর > “স্ক্রিপ্টস” / “স্টাইলস”-এ, কে কী এনকিউ করছে তা শনাক্ত করুন।
কোড অ্যাভ্যান্ট (ত্রুটিপূর্ণ / অ্যান্টি-প্যাটার্ন)
বাস্তব উদাহরণ (নিজস্বভাবে তৈরি প্লাগইন বা কোড): আমরা "যদি কোনো কারণে প্রয়োজন হয়" এই ভেবে পুরো সাইট জুড়ে একটি ভারী স্ক্রিপ্ট কিউতে যুক্ত করে রাখি।
<?php
// functions.php (AVANT) — Anti-pattern : charge partout, même si la page n’en a pas besoin.
add_action('wp_enqueue_scripts', function () {
wp_enqueue_style('mon-addon-elementor', get_stylesheet_directory_uri() . '/assets/mon-addon.css', [], '1.0');
wp_enqueue_script('mon-addon-elementor', get_stylesheet_directory_uri() . '/assets/mon-addon.js', ['jquery'], '1.0', true);
});
একটি এলিমেন্টর সাইটে, এই "ছোট" স্ক্রিপ্টটি শেষ পর্যন্ত আরও ১০টি স্ক্রিপ্টে যুক্ত হয়ে যায়। ব্রাউজার এটি সামলাতে পারে না, বিশেষ করে মোবাইলে।
কোড পরে (সংশোধিত: শর্তসাপেক্ষ লোডিং)
উদ্দেশ্য: এলিমেন্টর এডিটর/প্রিভিউতে কোনো ব্যাঘাত না ঘটিয়ে, শুধুমাত্র প্রয়োজনীয় পেজগুলোতে এটি লোড করা।
<?php
/**
* functions.php (APRÈS)
* Chargement conditionnel d’assets front-end, compatible WordPress 6.9.4+ / PHP 8.1+.
*
* Astuce : adaptez la condition (ID de page, template, shortcode, etc.).
*/
add_action('wp_enqueue_scripts', function () {
// Ne touchez pas l’admin, et évitez de perturber l’éditeur Elementor.
if (is_admin()) {
return;
}
// Si Elementor est actif et que vous êtes dans son mode preview, évitez les optimisations agressives.
// On évite d’appeler des APIs Elementor si le plugin n’est pas chargé.
if (defined('ELEMENTOR_VERSION') && isset($_GET['elementor-preview'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
return;
}
// Exemple : ne charger que sur une page précise.
$target_page_id = 123; // Remplacez par votre ID réel.
if (!is_singular() || (int) get_queried_object_id() !== $target_page_id) {
return;
}
$ver = '1.1';
wp_enqueue_style(
'mon-addon-elementor',
get_stylesheet_directory_uri() . '/assets/mon-addon.css',
[],
$ver
);
wp_enqueue_script(
'mon-addon-elementor',
get_stylesheet_directory_uri() . '/assets/mon-addon.js',
[],
$ver,
true
);
}, 20);
কেন এটি সঠিক
- আপনি অনুরোধের সংখ্যা এবং পার্স করার জন্য CSS/JS-এর পরিমাণ হ্রাস করেন।
- আপনি প্রধান থ্রেডে (INP) প্রতিযোগিতা হ্রাস করেন।
- আপনি এডিটরে (এলিমেন্টর প্রিভিউ) সাইড এফেক্ট এড়াতে পারেন, যা একটি চিরাচরিত ফাঁদ: “এটি ফ্রন্ট এন্ডে কাজ করে, কিন্তু এডিটরটি অস্থিতিশীল হয়ে পড়ে”।
সাধারণ পরিস্থিতি: একটি অ্যাড-অন প্লাগইনের অ্যাসেটগুলো নিষ্ক্রিয় করা
অনেক অ্যাড-অন প্লাগইনে "শুধুমাত্র ব্যবহৃত হলেই অ্যাসেট লোড করুন" (Load assets only when used) অপশনটি থাকে। এটি চালু করুন। যদি এটি না থাকে, তবে ক্ষেত্রবিশেষে আপনি এটি বন্ধও করতে পারেন।
সাধারণ উদাহরণ (প্রয়োজন অনুযায়ী পরিবর্তন করতে হবে: কোয়েরি মনিটরের মাধ্যমে আপনাকে সঠিক হ্যান্ডেলটি জানতে হবে)। সতর্কীকরণ: ভুল হ্যান্ডেল ব্যবহার করলে আপনার কোনো লাভ হবে না।
<?php
/**
* Désenregistre un style/script d’add-on Elementor sur les pages qui ne l’utilisent pas.
* À adapter avec les handles réels observés.
*/
add_action('wp_enqueue_scripts', function () {
if (is_admin()) {
return;
}
// Exemple : on garde sur les pages “landing”, on retire ailleurs.
if (is_page_template('templates/landing.php')) {
return;
}
// Handles fictifs : remplacez par ceux vus dans Query Monitor.
wp_dequeue_style('eael-frontend'); // Essential Addons (exemple)
wp_dequeue_script('eael-frontend'); // Essential Addons (exemple)
// Si le plugin ré-enqueue plus tard, utilisez wp_deregister_* ou augmentez la priorité.
}, 999);
অফিসিয়াল রেফারেন্স: wp_enqueue_script (), wp_dequeue_script ().
সমাধান ২: ফন্ট, আইকন এবং অ্যানিমেশন অপ্টিমাইজ করুন (LCP/INP-এর আসল কারণ)
"সুন্দর" এলিমেন্টর ওয়েবসাইটগুলিতে, ধীরগতির কারণ প্রায়শই সার্ভারের চেয়ে ব্রাউজারই বেশি হয়ে থাকে। দুটি সন্দেহভাজন কারণ বারবার উঠে আসে: ফন্ট et অ্যানিমেশন.
২ক. ফন্ট: প্রকারভেদের সংখ্যা কমান + ব্লকিং পরিহার করুন
লক্ষণসমূহ :
- লোড হওয়ার সময় অদৃশ্য লেখা (FOIT) অথবা দেরিতে ফন্ট পরিবর্তন (FOUT)।
- মূল শিরোনামটি ফন্টের জন্য অপেক্ষা করছে বলে LCP-এর মান অবনমিত করা হয়েছে।
এলিমেন্টরের যে সেটিংসগুলো কোড ছাড়া যাচাই করতে হবে:
- Elementor > Settings/Experiences-এ (সংস্করণ অনুযায়ী): আপনার প্রয়োজন না থাকলে গ্লোবাল ফন্টগুলি নিষ্ক্রিয় করুন, অথবা সেগুলিকে ১-২টি ফ্যামিলিতে সীমাবদ্ধ করুন।
- যদি ২টি ফ্যাটই যথেষ্ট হয়, তবে ৬টি ফ্যাট (১০০/২০০/৩০০/৪০০/৬০০/৭০০) পরিহার করুন।
প্রযুক্তিগত অপ্টিমাইজেশন: বল font-display: swap সেলফ-হোস্টেড ফন্টের ক্ষেত্রে (অথবা যখন কোনো প্লাগইন সোয়াপ ছাড়া CSS ইনজেক্ট করে)।
কোডের আগে
/* AVANT : font-face sans font-display, risque de FOIT */
@font-face {
font-family: "MaFont";
src: url("/wp-content/uploads/fonts/mafont.woff2") format("woff2");
font-weight: 400;
font-style: normal;
}
কোড পরে
/* APRÈS : swap évite le texte invisible, améliore la perception et parfois le LCP */
@font-face {
font-family: "MaFont";
src: url("/wp-content/uploads/fonts/mafont.woff2") format("woff2");
font-weight: 400;
font-style: normal;
font-display: swap;
}
যদি আপনি সোর্স CSS নিয়ন্ত্রণ না করেন, তাহলে একটি ছোট সমাধান যোগ করতে পারেন। এটি নিখুঁত নয়, তবে কাজ চলে যাবে।
<?php
/**
* Injecte un correctif CSS minimal.
* À mettre dans un thème enfant ou un plugin mu-plugin.
*/
add_action('wp_head', function () {
if (is_admin()) {
return;
}
echo '<style>@font-face{font-display:swap;}</style>';
}, 20);
দ্রষ্টব্য: এই কৌশলটি ইচ্ছাকৃতভাবে সংক্ষিপ্ত এবং এটি সব ডিক্লারেশনকে অন্তর্ভুক্ত নাও করতে পারে। আমি এটি সেইসব ক্ষেত্রের জন্য সংরক্ষিত রাখি যেখানে কোনো প্লাগইন সোয়াপিং ছাড়াই @font-face তৈরি করে এবং আপনার একটি তাৎক্ষণিক সুবিধা প্রয়োজন।
সিএসএস রেফারেন্স: ফন্ট-প্রদর্শন (MDN).
২বি. আইকন: সম্পূর্ণ ফন্ট অসম (Font Awesome) লোড করা পরিহার করুন।
আমি প্রায়শই এমন এলিমেন্টর সাইট দেখেছি, যেগুলো মাত্র ১২টি আইকন ব্যবহার করলেও ফন্ট অসম-এর একাধিক সংস্করণ এবং একটি সম্পূর্ণ প্যাক লোড করে।
রোগ নির্ণয়:
- নেটওয়ার্ক > “fontawesome”, “fa-solid-900.woff2”, ইত্যাদি অনুসন্ধান করুন।
- আপনার থিমে (যেমন Avada বা কিছু প্রিমিয়াম থিম) আগে থেকেই কোনো আইকন সেট লোড হয় কিনা, তা যাচাই করুন।
সুপারিশকৃত পদ্ধতি (ভাঙা ছাড়া):
- যথাসম্ভব SVG আইকন ব্যবহার করুন (Elementor এগুলো সমর্থন করে)। আপনি পুরো ফন্টের জন্য নয়, বরং ব্যবহৃত আইকনটির জন্যই অর্থ প্রদান করেন।
- ডাবল লোডিং (থিম + এলিমেন্টর + প্লাগইন) পরিহার করুন।
আমি তোমাকে এখানে দিচ্ছি না wp_dequeue_style('font-awesome') এটি বেশ জাদুকরী, কারণ এলিমেন্টর, থিম এবং অ্যাড-অন ভেদে হ্যান্ডেলগুলো ভিন্ন হয়। সঠিক হ্যান্ডেলটি শনাক্ত করতে কোয়েরি মনিটর ব্যবহার করুন, তারপর সেটিকে আনরেজিস্টার করুন। uniquement যদি আপনি নিশ্চিত করে থাকেন যে কোনো উইজেট এটি ব্যবহার করছে না।
২সি. অ্যানিমেশন / মোশন এফেক্টস: INP উন্নত করার জন্য সীমাবদ্ধ করুন
লক্ষণসমূহ :
- স্ক্রোল ঝাঁকুনিপূর্ণ, ক্লিকে ইনপুট ল্যাগ, INP ত্রুটিপূর্ণ।
- DevTools পারফরম্যান্স: প্রচুর “Recalculate Style” এবং “Layout”।
এলিমেন্টরে কোনো কোড না থাকলে, এড়িয়ে চলুন:
- প্রতিটি বিভাগে অ্যানিমেশন (এন্ট্রি, জটিল হোভার ইফেক্ট)।
- মোবাইলে মোশন এফেক্ট (প্যারালাক্স, মাউস ট্র্যাক)।
- সবখানে স্লাইডার (একটি স্লাইডার = জাভাস্ক্রিপ্ট + লেআউট + ছবি)।
কোডের মাধ্যমে (নির্দিষ্ট ক্ষেত্রে): যেসব ব্যবহারকারী কম নড়াচড়া পছন্দ করেন, তাদের জন্য অ্যানিমেশন কমানো এবং ডিভাইসের ওপর চাপ কমানো।
<?php
/**
* Ajoute une classe sur le body pour appliquer des règles CSS "reduced motion".
*/
add_filter('body_class', function (array $classes) {
$classes[] = 'bpcab-reduced-motion';
return $classes;
});
/* Désactive des animations lourdes si l’utilisateur a activé "réduire les animations" */
@media (prefers-reduced-motion: reduce) {
.bpcab-reduced-motion .elementor * {
animation: none !important;
transition: none !important;
scroll-behavior: auto !important;
}
}
এটি কোনো “সর্বজনীন” অপ্টিমাইজেশন নয়, কিন্তু কিছু খুব ব্যস্ত সাইটে, বিশেষ করে মোবাইলে, INP-এর বৃদ্ধি তাৎক্ষণিক হয়।
সমাধান ৩: উন্নত ডায়াগনস্টিকস (কোয়েরি মনিটর, ক্যাশে, রিরাইট, সার্ভার)
আপনি যদি ইতিমধ্যেই অ্যাসেটগুলোর আকার কমিয়ে থাকেন এবং তারপরেও এটি ধীরগতির থাকে, তাহলে আপনাকে সেগুলোকে আলাদা করতে হবে: টিটিএফবি (সার্ভার) বনাম ব্রাউজার রেন্ডারিং (ফ্রন্ট-এন্ড)। এলিমেন্টর কোনো না কোনো কারণে “ধীরগতির” হতে পারে।
3A. এলিমেন্টর দ্বারা তৈরি CSS-এ 404 ত্রুটি মোকাবেলা করা
সাধারণ ঘটনা: /wp-content/uploads/elementor/css/post-1234.css এটি একটি 404 এরর দেখায়, তখন এলিমেন্টর একটি ইনলাইন CSS ফাইল বা অন্য কোনো ফাইল ব্যবহার করে। ফলে, আপনি স্টাইলবিহীন বা অসম্পূর্ণ স্টাইলযুক্ত একটি ফ্ল্যাশ ইমেজ দেখতে পান।
সুনির্দিষ্ট পদক্ষেপ:
- এলিমেন্টর-এ > টুলস: CSS ফাইল এবং ডেটা পুনরায় তৈরি করুন (সংস্করণভেদে শব্দচয়ন একই রকম)।
- সমস্ত ক্যাশ মুছে ফেলুন: ক্যাশ প্লাগইন, সার্ভার ক্যাশ, সিডিএন (ক্লাউডফ্লেয়ার), ব্রাউজার।
- অনুমতিগুলো যাচাই করুন:
wp-content/uploadsetwp-content/uploads/elementorPHP দ্বারা লেখনযোগ্য হতে হবে।
- Nginx-এ, নিশ্চিত করুন যে আপনি ব্লক করছেন না।
/wp-content/uploads/একটি “অস্বীকার” নিয়মের মাধ্যমে।
একটি সাধারণ ভুল হলো: CSS পুনরায় তৈরি করা, কিন্তু এটা ভুলে যাওয়া যে CDN তখনও পুরোনো 404 ক্যাশে সরবরাহ করছে। এর ফল হলো: সোর্স কোড ঠিক থাকা সত্ত্বেও আপনি হলফ করে বলতে থাকেন যে "এটা কাজ করছে না"।
3B. রেন্ডারিং এর সাথে TTFB পরিমাপ করুন (এবং ভুল ফলাফল এড়িয়ে চলুন)
আমি যা পদ্ধতিগতভাবে করি:
- প্রাইভেট ব্রাউজিং মোডে, সংযোগ বিচ্ছিন্ন অবস্থায় এবং কোনো এক্সটেনশন ছাড়া পরীক্ষা করা হয়েছে।
- ডেভটুলস নেটওয়ার্ক: দেখুন টিটিএফবি এইচটিএমএল ডকুমেন্টের।
- যদি TTFB ৮০০–১২০০ মিলিসেকেন্ডের বেশি হয়, তাহলে আপনার সার্ভার বা ক্যাশিং-এ সমস্যা আছে, শুধু এলিমেন্টরের নয়।
ওয়ার্ডপ্রেস পারফরম্যান্স বেঞ্চমার্ক: পারফরম্যান্স (developer.wordpress.org).
3C. ক্যাশ স্ট্যাক (পেজ ক্যাশ + ওপিক্যাশ) পরীক্ষা করুন।
ওয়ার্ডপ্রেস ৬.৯.৪-এর ক্ষেত্রে, ভালো হোস্টিং থাকা সত্ত্বেও ক্যাশ করা পৃষ্ঠা ছাড়া একটি এলিমেন্টর সাইট প্রায় সবসময়ই ধীরগতির হয়।
- পৃষ্ঠা ক্যাশে যেসব ভিজিটর লগ ইন করেননি, তাদের অবশ্যই স্ট্যাটিক এইচটিএমএল পেজ পরিবেশন করতে হবে।
- OPcache PHP-এর জন্য এটি অপরিহার্য। OPcache ছাড়া, প্রতিটি অনুরোধ স্ক্রিপ্টগুলোকে পুনরায় কম্পাইল করে।
OPcache রেফারেন্স: পিএইচপি ওপক্যাশ (php.net).
3D. DevTools ব্যবহার করে যে স্ক্রিপ্টগুলো (INP) ব্লক করছে সেগুলো শনাক্ত করুন।
একটি ধীরগতির পৃষ্ঠায়:
- ক্রোম ডেভটুলস > পারফরম্যান্স > একটি স্ক্রল ও একটি ক্লিক রেকর্ড করুন
- “দীর্ঘ কাজগুলো” এবং এর জন্য দায়ী স্ক্রিপ্টটি শনাক্ত করুন।
- এই স্ক্রিপ্টটি প্রায়শই একটি থার্ড-পার্টি (ট্যাগ ম্যানেজার, চ্যাট) বা একটি স্লাইডার উইজেট হয়ে থাকে।
এই পর্যায়ে, সেরা অপ্টিমাইজেশন হলো "আরও বেশি মিনিফাই করা" নয়। বরং প্রায়শই সেরা উপায় হলো: স্ক্রিপ্টটি সরিয়ে ফেলা, শর্তসাপেক্ষে লোড করা, অথবা এর লোড হওয়া বিলম্বিত করা।
3E. ওয়ার্ডপ্রেস: আপনার কোয়েরিগুলো সঠিক (এবং ক্যাশ-বান্ধব) কিনা তা নিশ্চিত করুন।
দুটি ভুল আমি প্রায়শই দেখি:
- ভার্সনিং অনুপস্থিত: আপডেটের পরেও ব্রাউজারটি পুরোনো JS/CSS ধরে রাখে।
- ভুল হুকে (বা খুব তাড়াতাড়ি) কিউতে যুক্ত হওয়া, যা ক্রমটি ভেঙে দেয়।
উদাহরণ: সঠিকভাবে ভার্সনিং করা filemtime() (অনুশীলনে) শিশু থিমদ্রষ্টব্য: কিছু NFS আবাসনের ক্ষেত্রে, filemtime() এটি ধীরগতির হতে পারে। এটি মূলত স্থানীয় ফাইলের জন্য ব্যবহার করুন, দূরবর্তী ইউআরএল-এর জন্য নয়।
<?php
add_action('wp_enqueue_scripts', function () {
$css_path = get_stylesheet_directory() . '/assets/site.css';
$css_url = get_stylesheet_directory_uri() . '/assets/site.css';
$ver = file_exists($css_path) ? (string) filemtime($css_path) : '1.0';
wp_enqueue_style('site', $css_url, [], $ver);
}, 20);
তথ্যসূত্র: হুক wp_enqueue_scripts.
সংশোধন-পরবর্তী চেক
প্রতিটি সমাধান প্রয়োগ করার পর, একটি স্থিতিশীল পদ্ধতি ব্যবহার করে তা যাচাই করুন। অন্যথায়, আপনি হট/কোল্ড ক্যাশে, সিডিএন এবং স্থানীয় প্রভাবগুলোকে গুলিয়ে ফেলবেন।
- শুদ্ধিকরণ প্লাগইন ক্যাশে, সার্ভার ক্যাশে, সিডিএন, তারপর হার্ড রিলোড (Ctrl+F5) অথবা প্রাইভেট ব্রাউজিং।
- মাপ :
- এইচটিএমএল ডকুমেন্টের (নেটওয়ার্ক) টিটিএফবি।
- মোট অনুরোধের সংখ্যা + স্থানান্তরিত মোট ওজন।
- লাইটহাউসের মাধ্যমে এলসিপি/আইএনপি (মনে রাখতে হবে যে লাইটহাউস একটি ল্যাব)।
- নিয়ন্ত্রণ কোনো কনসোল ত্রুটি নেই এবং CSS Elementor-এ কোনো 404 ত্রুটিও দেখাচ্ছে না।
- মোবাইল তুলনা করুন যে ওয়েবসাইট ডেস্কটপে মোটামুটি চলে, তা মোবাইলে মারাত্মক হতে পারে।
আপনি যদি কিছু পেজে থিম বিল্ডার (আভাডা) বা অন্য কোনো বিল্ডারের (ডিভি ৫) সাথে এলিমেন্টর ব্যবহার করেন, তাহলে প্রতিটি পেজের ধরন পরীক্ষা করে দেখুন। CSS/JS স্ট্যাক দ্রুত বেড়ে যায়।
যদি তাতেও কাজ না হয়
প্রত্যাশিত ফলাফল অর্জিত না হলে আমি যে সমস্যা সমাধান পদ্ধতিটি প্রয়োগ করি।
ধাপ ১: প্লাগইন/থিমের দ্বন্দ্বটি চিহ্নিত করুন (সাইটের ক্ষতি না করে)
- ইনস্টল স্বাস্থ্য পরীক্ষা ও সমস্যা সমাধান.
- আপনার সেশনের জন্য ট্রাবলশুটিং মোড সক্রিয় করুন।
- সমস্ত এলিমেন্টর অ্যাড-অন নিষ্ক্রিয় করুন, তারপর এক এক করে পুনরায় সক্রিয় করুন।
আপনি খুঁজছেন এমন একটি প্লাগইন যা ১০টি গ্লোবাল স্ক্রিপ্ট অথবা একটি “ইউনিভার্সাল” স্লাইডার যোগ করে।
ধাপ ২: PHP এবং JS ত্রুটি পরীক্ষা করুন।
wp-content/debug.logবারবার আসা সতর্কবার্তা/বিজ্ঞপ্তিগুলো প্রতিক্রিয়াগুলোকে ধীর করে দিতে পারে (এবং দূষিত করতে পারে)।- কনসোল: JS ত্রুটি যা পুনরায় চেষ্টার কারণ হয়, অথবা কোনো উইজেটের হাইড্রেশন ব্যাহত করে।
একটি সাধারণ ভুল হলো: পুরোনো কোনো টিউটোরিয়াল (ওয়ার্ডপ্রেস ৬.৫-এর আগের) থেকে কপি করা কোড স্নিপেট, যা কোনো ফাংশনকে খুব তাড়াতাড়ি বা ভুল হুকে কল করে। এর ফলে নীরব ত্রুটি (silent errors) দেখা দেয় এবং ফ্রন্ট-এন্ড অস্থিতিশীল হয়ে পড়ে।
ধাপ ৩: প্রকৃতপক্ষে পরিবেশিত ক্যাশে যাচাই করুন
- হেডারগুলো পরীক্ষা করুন (যেমন:
cache-control,x-cache(হোস্টিং প্রদানকারীর উপর নির্ভর করে)। - সংযুক্ত এবং সংযোগহীন অবস্থার তুলনা করুন: যদি সংযোগহীন অবস্থায় গতি বেশি এবং সংযুক্ত অবস্থায় গতি কম হয়, তবে তা স্বাভাবিক, কিন্তু আপনি অ্যাডমিন সাইডে (প্লাগইন, কোয়েরি) এর খরচ কমাতে পারেন।
ধাপ ৪: নিয়ম ও স্থায়ী লিঙ্কগুলি পুনর্লিখন করুন
বিরল হলেও আমি দেখেছি: ত্রুটিপূর্ণ রিরাইট রুলের কারণে অ্যাসেটগুলোতে মাঝে মাঝে 404 এরর দেখা দেয় (যা CDN/প্রক্সির উপর নির্ভর করে)।
- পুনরায় তৈরি করতে সেটিংস > পারমালিঙ্কস > কোনো পরিবর্তন না করে সংরক্ষণ করুন।
- আপনার যদি কাস্টম Nginx থাকে, তাহলে স্ট্যাটিক ফাইলগুলোর অবস্থান যাচাই করুন।
তথ্যসূত্র: flush_rewrite_rules() (প্রতিবার লোড হওয়ার সময় কল করা হবে না, শুধুমাত্র কোনো প্লাগইন সক্রিয় করার সময় বা অ্যাডমিনের কোনো কাজ করার সময় কল করা হবে)।
ধাপ ৫: সার্ভার (যখন TTFB-ই আসল সমস্যা)
- OPcache সক্রিয় এবং এর আকার নির্ধারণ করা হয়েছে।
- HTTP/2 অথবা HTTP/3 সক্রিয় করা হয়েছে।
- ডিস্কটি স্যাচুরেটেড নয়।
- আপনার সাইটে যদি অনেকগুলো ডাইনামিক লগ-ইন করা পেজ থাকে, তাহলে অবজেক্ট ক্যাশে (Redis/Memcached) ব্যবহার করুন।
সাধারণ ফাঁদ এবং ভুলগুলি
| লক্ষণ | সম্ভাব্য কারণ | প্রস্তাবিত সমাধান |
|---|---|---|
| আমি একটি স্ক্রিপ্ট নিষ্ক্রিয় করার পর, এলিমেন্টর এডিটরটি আর কাজ করছে না। | প্রিভিউ/অ্যাডমিনকে বাদ না দিয়ে আনসাবস্ক্রাইব করার বিষয়টি খুবই ব্যাপক। | বাদ দিন is_admin() et elementor-previewস্টেজিং-এ পরীক্ষা |
| অপ্টিমাইজেশনের পরেও কিছুই পরিবর্তন হয় না। | ব্রাউজার/সিডিএন ক্যাশে ফ্লাশ করা হয়নি | প্লাগইন ক্যাশে ও সিডিএন মুছে ফেলুন, প্রাইভেট ব্রাউজিং মোডে পরীক্ষা করুন |
| মিনিফিকেশনের পর CSS ভেঙে গেছে | ক্যাশ প্লাগইনটি CSS/JS কোডগুলোকে ভুল ক্রমে একত্রিত করে বা সরিয়ে দেয়। | “combine” নিষ্ক্রিয় করুন, মিনিফিকেশন সহজ রাখুন, Elementor বাদ দিন। |
| অপ্টিমাইজেশনের পরে কনসোল ত্রুটি | নির্ভরশীল স্ক্রিপ্টটি তার নির্ভরশীল স্ক্রিপ্টের আগে লোড হয়েছে। | নির্ভরতাগুলো সংশোধন করুন wp_enqueue_script(..., ['jquery']) অথবা অপ্রয়োজনীয় হলে jQuery সরিয়ে দিন। |
৪০৩ এর মধ্যে post-XXXX.css |
CSS পুনরায় তৈরি হচ্ছে না, অনুমতি, CDN 404 ত্রুটিটি আড়াল করছে | CSS পুনর্গঠন করুন + অনুমতি পরীক্ষা করুন + CDN মুছে ফেলুন |
| কোডটি কাজ করে না। | ভুল জায়গায় কোড পেস্ট করা হয়েছে / বন্ধনী নেই / ত্রুটিপূর্ণ হুক | থিমে রাখুন শিশু অথবা প্লাগইন, পিএইচপি ত্রুটি পরীক্ষা করুন, একটি লিন্টার ব্যবহার করুন |
| সাইটটি ধীরগতির এবং শুধু মোবাইলে কাজ করে। | অ্যানিমেশন + ছবি + থার্ড-পার্টি JS প্রাধান্য পায় | অ্যানিমেশন সীমিত করুন, ছবি অপ্টিমাইজ করুন, তৃতীয় পক্ষের স্ক্রিপ্ট বিলম্বিত করুন |
রূপভেদ / বিকল্প
নো-কোড পদ্ধতি (যদি আপনি কোডিংয়ে স্বচ্ছন্দ না হন তবে এটি সুপারিশ করা হয়)
- এলিমেন্টরে: প্রস্তাবিত পারফরম্যান্স অপশনগুলো সক্রিয় করুন (আপনার ভার্সনে উপলব্ধ থাকলে অপ্টিমাইজড অ্যাসেট লোডিং)।
- অ্যাড-অনগুলিতে অপ্রয়োজনীয় উইজেটগুলি নিষ্ক্রিয় করুন (অনেক অ্যাড-অনে মডিউল “নিষ্ক্রিয়” করার সুবিধা থাকে)।
- সম্ভব হলে স্লাইডার ও ক্যারোসেলগুলোকে স্থির অংশ দিয়ে প্রতিস্থাপন করুন।
- ফন্টের সংখ্যা কমিয়ে ১-২টি ফ্যামিলি এবং ২-৩টি ওয়েটে নিয়ে আসুন।
আরও উন্নত পদ্ধতি (ডেভেলপারদের জন্য): অ্যাসেট নিয়ন্ত্রণের জন্য MU-প্লাগইন
যদি আপনি চান যে কোনো থিম/চাইল্ড বা স্নিপেট প্লাগইন যেন সবকিছু নষ্ট করে না দেয়, তাহলে একটি MU-প্লাগইন তৈরি করুন: এটি শুরুতেই লোড হয় এবং থিমের উপর নির্ভরশীল নয়।
<?php
/**
* Fichier : wp-content/mu-plugins/bpcab-elementor-perf.php
* Contrôle minimal des assets, sans dépendre du thème.
*
* Attention : adaptez les handles. Testez sur staging.
*/
defined('ABSPATH') || exit;
add_action('wp_enqueue_scripts', function () {
if (is_admin()) {
return;
}
// Ne pas perturber l’éditeur Elementor en preview.
if (defined('ELEMENTOR_VERSION') && isset($_GET['elementor-preview'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
return;
}
// Exemple : retirer un script tiers sur toutes les pages sauf la page Contact.
if (!is_page('contact')) {
wp_dequeue_script('chat-widget'); // Handle à remplacer par le vrai
}
}, 999);
এমইউ-প্লাগইন রেফারেন্স: অবশ্যই ব্যবহারযোগ্য প্লাগইনসমূহ (developer.wordpress.org).
ভবিষ্যতে এই সমস্যাটি এড়িয়ে চলুন
- উইজেট বাজেট প্রতি পৃষ্ঠায় একটি সীমা আরোপ করুন (যেমন, ২টির বেশি ক্যারোসেল নয়, ১টির বেশি পপআপ নয়, প্রতিটি বিভাগে কোনো অ্যানিমেশন নয়)।
- প্রতিটি সংযোজনের পরে নিরীক্ষা করুন এলিমেন্টর অ্যাড-অন ইনস্টল করছেন? এটি গ্লোবাল অ্যাসেট লোড করে কিনা তা অবিলম্বে পরীক্ষা করুন।
- তোমার লেজ প্রস্তুত করো অকারণে সাইট-ব্যাপী কোনো স্ক্রিপ্ট চালানো যাবে না। রিগ্রেশনের এটিই প্রধান কারণ।
- মিশ্রণ নির্মাতাদের এড়িয়ে চলুন একসাথে Divi 5, Elementor এবং Avada ব্যবহার করলে প্রায়শই একই CSS ফ্রেমওয়ার্ক একাধিকবার ব্যবহৃত হয় এবং একের পর এক ওভাররাইড হতে থাকে। যদি আপনাকে এটি করতেই হয়, তবে পেজের ধরন অনুযায়ী ভাগ করে প্রতিটি অংশ পরীক্ষা করুন।
- সামনের দিকে পারমালিঙ্কগুলো ফ্লাশ করবেন না। আমি ইতিমধ্যেই স্নিপেট দেখেছি যাকে বলা হয়
flush_rewrite_rules()surinitএটি সবকিছু ধীর করে দেয়। শুধু অ্যাক্টিভেশনের সময় এটি করুন। - PHP হালনাগাদ রাখুন এখানে ন্যূনতম পিএইচপি ৮.১ ব্যবহারের পরামর্শ দেওয়া হচ্ছে, কিন্তু আপনার স্ট্যাকে যদি ৮.২/৮.৩ সাপোর্ট থাকে, তবে আপনি প্রায়শই পারফরম্যান্স এবং কম্প্যাটিবিলিটির দিক থেকে বাড়তি সুবিধা পাবেন (যা আপনার প্লাগইনগুলোর মাধ্যমে যাচাই করে নিতে হবে)।
সম্পদ
- ওয়ার্ডপ্রেস পারফরম্যান্স (developer.wordpress.org)
- ওয়ার্ডপ্রেসে ডিবাগিং (developer.wordpress.org)
- wp_enqueue_script() (developer.wordpress.org)
- কোয়েরি মনিটর (wordpress.org)
- স্বাস্থ্য পরীক্ষা ও সমস্যা সমাধান (wordpress.org)
- OPcache (php.net)
- ওয়ার্ডপ্রেস পারফরম্যান্স টিম (গিটহাব)
প্রায়শই জিজ্ঞাসিত প্রশ্ন
আমি কিভাবে বুঝব যে সমস্যাটা এলিমেন্টরের নাকি আমার সার্ভারের?
এইচটিএমএল ডকুমেন্টের টিটিএফবি (নেটওয়ার্ক) পরীক্ষা করুন। যদি টিটিএফবি ভালো থাকে (< ~৮০০ মিলিসেকেন্ড) কিন্তু রেন্ডারিং ধীর হয়, তবে এটি মূলত একটি ফ্রন্ট-এন্ড সমস্যা (অ্যাসেট, জেএস, ফন্ট)। যদি টিটিএফবি খারাপ হয়, তবে ক্যাশে/সার্ভার ট্রাবলশুটিং দিয়ে শুরু করুন।
স্থানীয়ভাবে এটি দ্রুত হলেও উৎপাদনে ধীর কেন?
প্রোডাকশনে প্রায়শই একটি CDN, ক্যাশিং নিয়ম, মিনিফিকেশন এবং কখনও কখনও ওয়েব অ্যাপ্লিকেশন প্রোটেকশন (WAF) থাকে, যা এর আচরণে পরিবর্তন আনে। CDN দ্বারা "লুকানো" CSS Elementor 404 এরর খুবই সাধারণ একটি ঘটনা।
মিনিফাই বা একত্রিত করলে কি ধীরগতির সমস্যাটির সমাধান হয়?
মিনিফাই করা কিছুটা সাহায্য করতে পারে। HTTP/2/3-এ কম্বাইনিং প্রায়শই হিতে বিপরীত হয় এবং স্ক্রিপ্টের ক্রম নষ্ট করে দিতে পারে। আমি যা করতে পছন্দ করি তা হলো: প্রথমে লোড করা অ্যাসেটের সংখ্যা কমানো, তারপর কম্বাইন না করে মিনিফাই করা।
যদি এলিমেন্টর এডিটর ধীরগতির হয়ে যায় কিন্তু ফ্রন্ট এন্ড ঠিকঠাক কাজ করে, তাহলে আমার কী করা উচিত?
অ্যাডমিন প্যানেলে সক্রিয় প্লাগইন (এসইও, নিরাপত্তা, পরিসংখ্যান), পিএইচপি মেমরি ব্যবহার এবং পিএইচপি ত্রুটিগুলি পরীক্ষা করুন। অ্যাডমিন প্যানেলে থাকা কোয়েরি মনিটর সহায়ক। ভিজিটরদের প্রভাবিত না করে ক্ষতিগ্রস্ত সিস্টেমটিকে আলাদা করতে হেলথ চেক ব্যবহার করুন।
কাজের গতি বাড়াতে আমার কি jQuery নিষ্ক্রিয় করা উচিত?
শুধুমাত্র একটি উদ্দেশ্য হিসেবে নয়। jQuery সরিয়ে দিলে অ্যাড-অনগুলো অকার্যকর হয়ে যেতে পারে। অন্যদিকে, যদি ভ্যানিলা জাভাস্ক্রিপ্টে নিজের jQuery-নির্ভর স্ক্রিপ্ট যোগ করা যায়, তবে তা এড়িয়ে চলুন।
আমি কেন 404 ত্রুটি পাচ্ছি /uploads/elementor/css/ ?
প্রায়শই: CSS পুনরায় তৈরি না হওয়া, লেখার অনুমতি না থাকা, ক্যাশে/সিডিএন পুরোনো অবস্থা পরিবেশন করা, অথবা সার্ভারের নিয়ম অ্যাক্সেস ব্লক করে দেওয়া। uploadsপুনরায় তৈরি করুন, মুছে ফেলুন এবং তারপরে সরাসরি CSS URL-টি পরীক্ষা করুন।
এলিমেন্টর ওয়েবসাইটে অর্থ উপার্জনের সবচেয়ে লাভজনক উপায় কোনটি?
আমার অভিজ্ঞতা অনুযায়ী: ১) অ্যাড-অন/উইজেট এবং তাদের গ্লোবাল অ্যাসেট কমান, ২) ফন্ট/আইকন নিয়ন্ত্রণ করুন, ৩) থার্ড-পার্টি স্ক্রিপ্ট বিলম্বিত করুন বা সরিয়ে দিন। এই জায়গাগুলোতেই LCP/INP তার শ্রেষ্ঠত্ব প্রমাণ করে।
Divi 5 / Avada কি এলিমেন্টরকে ধীর করতে পারে?
হ্যাঁ, যদি আপনি একই পেজে তাদের ফ্রেমওয়ার্কগুলো লোড করেন (ডাবল CSS, ডাবল আইকন, ডাবল JS)। ভাগ করুন: একটি হালকা থিমসহ এলিমেন্টর পেজ, আলাদা Avada/Divi পেজ, এবং অনুসন্ধানগুলো পরীক্ষা করুন।
আমার কোন ক্যাশিং প্লাগইনটি বেছে নেওয়া উচিত?
পছন্দটি হোস্টিংয়ের উপর নির্ভর করে। গুরুত্বপূর্ণ বিষয়গুলো হলো একটি নির্ভরযোগ্য পেজ ক্যাশে থাকা, যথাযথ পার্জিং (এলিমেন্টর + সিডিএন), এবং অতিরিক্ত আগ্রাসী JS/CSS অপটিমাইজেশন এড়িয়ে চলা যা পেজের ক্রমকে ব্যাহত করে।