ধাপ ১: অপ্টিমাইজ করার আগে পরিমাপ করুন
আপনার সাইট PageSpeed Insights (pagespeed.web.dev)-এ চালান এবং চারটি সংখ্যা লিখুন: LCP (Largest Contentful Paint, মূল কনটেন্ট দেখা পর্যন্ত সময়), INP (Interaction to Next Paint, প্রতিক্রিয়াশীলতা), CLS (Cumulative Layout Shift, ভিজ্যুয়াল স্থিতিশীলতা) এবং মোট পৃষ্ঠার ওজন। Google-এর Core Web Vitals সীমা: LCP ২.৫ s-এর নিচে, INP ২০০ ms-এর নিচে, CLS ০.১-এর নিচে। এগুলি ২০২১ সাল থেকে সরাসরি আপনার অবস্থানকে প্রভাবিত করে। সেই সীমার নিচে «ভালো»; সীমা ও ৪ s/৫০০ ms/০.২৫-এর মধ্যে «উন্নতি প্রয়োজন»; এর চেয়ে খারাপ «দুর্বল»। WordPress গতি অপ্টিমাইজ করার পুরো উদ্দেশ্য হল এই তিনটি সংখ্যা সবুজ অঞ্চলে নিয়ে যাওয়া। GTmetrix বা অন্যান্য সমষ্টিগত মূল্যায়নের স্কোরের উপর আস্থা রাখবেন না: এগুলি Google-এর প্রকৃত সংকেতের সঙ্গে মেলে না।
ধাপ ২: আপনার হোস্টিং বটলনেক নয় তা যাচাই করুন
WebPageTest দিয়ে আপনার শ্রোতার ভূগোল থেকে TTFB (Time To First Byte) পরীক্ষা করুন। TTFB যদি ১ সেকেন্ড ছাড়িয়ে যায়, আপনার হোস্টিংই বটলনেক: কোনো ফ্রন্ট-এন্ড অপ্টিমাইজেশন এটি ঠিক করবে না। সাধারণ দোষী: অতিরিক্ত-লোডেড সার্ভারসহ সস্তা শেয়ার্ড হোস্টিং, আপনার শ্রোতার থেকে ভিন্ন মহাদেশে হোস্টিং, PHP opcache-এর অভাব (যেকোনো PHP 7+ সংস্করণে এটি ডিফল্টরূপে সক্রিয় থাকা উচিত)। সবচেয়ে সস্তা সমাধান হল একই প্ল্যান স্তরে একটি দ্রুততর হোস্টিংয়ে পরিবর্তন করা। মাসে ৫০,০০০-এর কম ভিজিটের জন্য, LiteSpeed Cache সহ Hostinger Business ৪০০ ms-এর নিচে TTFB দেয়। বেশি ট্রাফিকের জন্য, Google Cloud-এর প্রিমিয়াম স্তরে Kinsta বা WP Engine ধারাবাহিকভাবে ৩০০ ms-এর নিচে TTFB দেয়। হোস্টিং পরিবর্তন একটি প্লাগইন ইনস্টল করার চেয়ে বেশি কাজ, তবে উন্নতি সাধারণত নাটকীয়।
ধাপ ৩: পৃষ্ঠা ক্যাশিং হল সবচেয়ে বড় একক অপ্টিমাইজেশন
ডিফল্টরূপে, WordPress প্রতিটি অনুরোধে PHP + MySQL থেকে প্রতিটি পৃষ্ঠা তৈরি করে। পৃষ্ঠা ক্যাশিং তৈরি হওয়া HTML সংরক্ষণ করে এবং পরবর্তী দর্শকদের সরাসরি পরিবেশন করে: সাধারণত ১০-২০ গুণ দ্রুত। LiteSpeed-ভিত্তিক হোস্টিংয়ে (Hostinger, বেশিরভাগ Bluehost, A2 Turbo, NameHero), LiteSpeed Cache (বিনামূল্যে) ইনস্টল করুন: এটি সার্ভার-স্তরের ক্যাশের সঙ্গে একীভূত হয়। Apache/Nginx হোস্টিংয়ে, WP Rocket (৫৯ ডলার/বছর) ইনস্টল করুন: এটি সর্বোচ্চ মানের ক্যাশিং প্লাগইন এবং মূল্যের যোগ্য। বিনামূল্যের বিকল্পগুলি (W3 Total Cache, WP Super Cache) কাজ করে তবে বেশি কনফিগারেশন দরকার। পৃষ্ঠা ক্যাশিং সক্রিয় করার পরে, PageSpeed Insights-এ আবার পরীক্ষা করুন: আপনার TTFB নাটকীয়ভাবে নামতে দেখা উচিত।
ধাপ ৪: ইমেজ অপ্টিমাইজেশন দ্বিতীয় স্থানে আসে
ছবি সাধারণত একটি WordPress পৃষ্ঠার ওজনের ৬০-৮০%। ধরার মতো দুটি জয়: (১) কম্প্রেশন: প্রতিটি ছবি আপলোডের আগে কম্প্রেস করা উচিত। আমাদের Image Compressor ব্যবহার করুন বা আপলোডে স্বয়ংক্রিয়ভাবে কম্প্রেস করতে ShortPixel/Smush ইনস্টল করুন। লক্ষ্য: হেডার ছবি ২০০ KB-এর নিচে, কনটেন্ট ছবি ১০০ KB-এর নিচে। (২) আধুনিক ফরম্যাট: JPG/PNG-এর পরিবর্তে WebP (বা AVIF) পরিবেশন করুন। WebP একই মানে ২৫-৩৫% ছোট। ShortPixel ও Smush Pro স্বয়ংক্রিয়ভাবে রূপান্তর করে; বিকল্পভাবে, Cloudflare-এর ইমেজ অপ্টিমাইজেশন ছবিগুলি তাৎক্ষণিকভাবে পুনর্লিখন করে। (৩) লেজি লোডিং: ভাঁজের নিচের ছবি শুধু সেগুলিতে স্ক্রল করলে লোড হওয়া উচিত। WordPress 5.5+ স্বয়ংক্রিয়ভাবে loading='lazy' যোগ করে; সোর্স কোড দেখে এটি কাজ করছে কিনা যাচাই করুন। (৪) প্রস্থ অ্যাট্রিবিউট: CLS এড়াতে সর্বদা ছবিতে একটি স্পষ্ট width/height সেট করুন।
ধাপ ৫: CSS/JS মিনিফিকেশন ও বান্ডল অডিট
বেশিরভাগ ক্যাশিং প্লাগইন (WP Rocket, LiteSpeed Cache) CSS/JS মিনিফিকেশন অন্তর্ভুক্ত করে: এটি সক্রিয় করুন। সবচেয়ে বড় জয় হল ব্যবহার না হওয়া স্ক্রিপ্ট ডেফার বা সরানো। আপনার হোমপেজে Chrome DevTools → Coverage ট্যাব চালান; এটি দেখায় কোন CSS ও JS বাইট প্রকৃতপক্ষে ব্যবহৃত হয়। সাধারণ ফলাফল: ৫০-৮০% CSS ব্যবহার হয় না, ৩০-৬০% JS ব্যবহার হয় না। সমাধান: (ক) একটি হালকা থিম ব্যবহার করুন (GeneratePress বা Kadence ৩০ KB-এর কম CSS পাঠায়), (খ) ব্যবহার না হওয়া প্লাগইন নিষ্ক্রিয় করুন (প্রায়ই ব্যবহার না হওয়া স্ক্রিপ্টের উৎস), (গ) Asset CleanUp-এর মতো একটি প্লাগইন ব্যবহার করে এমন পৃষ্ঠায় স্ক্রিপ্ট নিষ্ক্রিয় করুন যেগুলির দরকার নেই (যেমন, Contact Form 7 ডিফল্টরূপে সর্বত্র লোড হয় এমনকি আপনি শুধু /contact-এ এটি ব্যবহার করলেও)।
ধাপ ৬: প্লাগইন অডিট: ধীরগুলি খুঁজুন
প্রতিটি সক্রিয় WordPress প্লাগইন প্রতিটি পৃষ্ঠা লোডে চলে, সম্ভাব্যভাবে কোয়েরি, JavaScript ও CSS যোগ করে। বেশিরভাগ ধীর সাইটে ৩০-৫০টির বেশি সক্রিয় প্লাগইন থাকে, যার অর্ধেক আর ব্যবহার করা হয় না। কোন প্লাগইন সবচেয়ে বেশি ডেটাবেস কোয়েরি করে তা দেখতে Query Monitor (বিনামূল্যে) ব্যবহার করুন। কোন প্লাগইন ফাংশন সবচেয়ে বেশি সময় নেয় তা দেখতে New Relic-এর বিনামূল্যের স্তর বা Kinsta-এর APM ব্যবহার করুন। প্রধান ঐতিহাসিক অপরাধী: Jetpack (অনেক কিছু করে, সবই প্রতিটি অনুরোধে), ট্রাফিক স্পাইকের সময় চলমান স্ফীত ব্যাকআপ প্লাগইন, সোশ্যাল শেয়ারিং প্লাগইন যা শেয়ার বোতাম ছাড়া পৃষ্ঠায়ও তাদের CSS/JS লোড করে, নিরাপত্তা প্লাগইন যা রিয়েল-টাইম ফাইল স্ক্যান করে। একটি প্লাগইন নিষ্ক্রিয় করুন, কর্মক্ষমতা আবার পরীক্ষা করুন এবং সিদ্ধান্ত নিন ফিচারটি খরচের যোগ্য ছিল কিনা।
ধাপ ৭: ডেটাবেস অপ্টিমাইজেশন
WordPress সময়ের সঙ্গে ডেটাবেসে আবর্জনা জমা করে: পোস্ট রিভিশন, মেয়াদোত্তীর্ণ ট্রানজিয়েন্ট, স্প্যাম মন্তব্য, অনাথ মেটাডেটা। WP-Optimize (বিনামূল্যে) ইনস্টল করুন এবং একবার একটি ডেটাবেস ক্লিনআপ চালান। যুক্তিসঙ্গত মাসিক রক্ষণাবেক্ষণ: ৬০ দিনের বেশি পুরোনো রিভিশন মুছুন (নিরাপত্তার জন্য সাম্প্রতিকগুলি রাখুন), মেয়াদোত্তীর্ণ ট্রানজিয়েন্ট, স্প্যাম সারি। উচ্চ-ট্রাফিকের সাইটের জন্য, সবচেয়ে বড় ডেটাবেস জয় হল অবজেক্ট ক্যাশিং: Redis বা Memcached ব্যয়বহুল MySQL কোয়েরির ফলাফল মেমরিতে সংরক্ষণ করে, পুনরাবৃত্ত কাজ এড়িয়ে। বেশিরভাগ ম্যানেজড WordPress হোস্টিং তাদের উচ্চ স্তরে Redis অন্তর্ভুক্ত করে; বেসিক শেয়ার্ড হোস্টিংয়ে এটি উপলব্ধ নয়।
ধাপ ৮: বৈশ্বিক শ্রোতার জন্য CDN
একটি CDN (Content Delivery Network) আপনার স্ট্যাটিক রিসোর্স (ছবি, CSS, JS) আপনার দর্শকদের কাছের এজ অবস্থানে ক্যাশ করে। মার্কিন যুক্তরাষ্ট্রে হোস্টেড শুধু মার্কিন শ্রোতার জন্য, একটি CDN একটি মাঝারি উন্নতি আনে। একটি বৈশ্বিক শ্রোতার জন্য, একটি CDN অপরিহার্য: এটি রিসোর্স লেটেন্সি ২০০-৫০০ ms থেকে ২০-৫০ ms-এ কমায়। Cloudflare-এর বিনামূল্যের স্তর বেশিরভাগ প্রয়োজন কভার করে; BunnyCDN ০.০১-০.০৫ ডলার/GB-তে চমৎকার কর্মক্ষমতাসহ একটি অর্থপ্রদত্ত উন্নতি। বিশেষত ছবির জন্য, Cloudflare Images বা Bunny Image Optimizer তাৎক্ষণিকভাবে রিসাইজ ও ফরম্যাট রূপান্তর করতে পারে।
ধাপ ৯: আবার পরিমাপ করুন ও পুনরাবৃত্তি করুন
প্রতিটি বড় পরিবর্তনের পরে, PageSpeed Insights আবার চালান। লক্ষ্য হল ক্রমবর্ধমান অগ্রগতি: বেশিরভাগ সাইট একটি একক পরিবর্তনে «দুর্বল» থেকে «ভালো» হয় না। একটি সম্পূর্ণ অপ্টিমাইজেশন পাসের পরে, সাধারণ ফলাফল: শেয়ার্ড হোস্টিংয়ে একটি WooCommerce স্টোর LCP ৪-৬ s থেকে LCP ১.৫-২.৫ s-এ যায়। ম্যানেজড হোস্টিংয়ে একটি কনটেন্ট ব্লগ LCP ২-৩ s থেকে LCP ০.৮-১.৫ s-এ যায়। উপরের সব কিছুর পরেও যদি আপনি ৩ s LCP-এর উপরে থাকেন, তাহলে বটলনেক সম্ভবত আপনার থিম: আরও অপ্টিমাইজ করার আগে একটি হালকা থিমে (GeneratePress, Kadence বা Astra) পরিবর্তন করুন।