ওয়ার্ডপ্রেস সাইট স্পীড অপটিমাইজেশন টিপস এন্ড ট্রিক্স

ওয়ার্ডপ্রেস সাইট স্পীড অপটিমাইজেশন খুবই গুরুত্বপূর্ণ কারণ কেউ যদি প্রথম ভিসিট করতে এসে সাইট লোডিং সময় বেশি নেয় স্বাভাবিক ভাবে সে বিরক্ত হবে , এতে ভিসিটর কমে যাওয়ার সম্ভাবনা প্রবল । মাইক্রোসফ্ট বিং সার্চ টিম এর একটি প্রতিবেদন অনুযায়ী, সাইট যদি ২ সেকেন্ডের বেশি লোড নেয় সেক্ষেত্রে ৩.৮% ইউজার স্যাটিসফেকশন কমে যায় এবং ৪. ৩% আয় কমে যায় আরও ক্লিকও কমে যায় ৪. ৩% । এজন্য স্পীড অপটিমাইজেশন খুবই গুরুত্বপূর্ণ ।

কিভাবে সাইট স্পীড চেক করবো ?

সাইট স্পীড চেক করার জন্য অনেক ওয়েবসাইট রয়েছে । প্রথমত আমরা গুগল পেজ স্পীড ইন্সাইট ব্যাবহার করতে পারি । এছাড়া আরও রয়েছে পিংডম , জিটিম্যাট্রিক্স , ডেয়ারবুস্ট, গিফট অফ স্পীড সহ আরও অনেক সাইট। আমি বেশি ব্যাবহার করি গুগল গুগল পেজ স্পীড ইন্সাইট এবং জিটিম্যাট্রিক্স ।

সাইট স্লো করার জন্য দায়ী কি কি ?

আপনার স্পীড টেস্ট এ আপনাকে একাধিক সাজেশন দিবে উপরোক্ত সাইট গুলি । যা একজন বিগেনার ইউজারের বুঝতে সমস্যা হতে পারে তাই শুরুতে প্রাথমিক বিষয় গুলি নিয়ে আলোচনা করি ।
প্রাথমিক ভাবে যা যা সাইট স্লো করে থাকবে :
১ । হোস্টিং : হোস্টিং নিম্নমানের হলে স্পীড ইস্যু থাকবে , নিম্নমানের শেয়ারড হোস্টিং সাধারণত ভালো করে কনফিগার করা থাকে না , এছাড়া রেসপন্স টাইম অনেক বেশি থাকে তাই স্পীড কমে যায় সাইটের । সুতরাং ভালো মানের হোস্টিং ব্যাবহার করতে হবে ।
২। পেজ সাইজ : সাইটের পেজ সাইজ কম হতে হবে , পেজ সাইজ বাড়ার জন্য ফটো , সি এস এস এবং জাভা স্ক্রিপ্ট দায়ী হতে পারে । তাই ওয়েল কোডেড থিম , মিনিফাইড রিসোর্স এবং অপ্টিমাইজড ফটো ব্যাবহার করতে হবে ।
৩। খারাপ মানের প্লাগিন : খারাপ মানের প্লাগিন যেগুলি ওয়েল কোডেড না এবং অনেক পুরাতন সেগুলিও স্পীড স্লো করতে পারে । তাই এই ব্যাপারে খেয়াল রাখতে হবে ।
৪ । বাহিরের স্ক্রিপ্ট : বাহির থেকে লোড হওয়া স্ক্রিপ্ট যেমন বিজ্ঞাপন বা যেকোনো আইফ্রেম এর কারণেও সাইট স্লো হতে পারে ।

ইমেজ অপ্টিমাইজ করার উপায়

আমরা ফটোশপ দিয়ে যখন ইমেজ সেভ করবো তখন সেভ অ্যাস ওয়েব দিয়ে সেভ করতে পারি , এটাতেও ওয়েবের মত করে অপটিমাইজড ইমেজ ফটোশপ দিয়ে থাকে । সেভ করার সময় অবশ্যই সাইজ দেখে নিব । এই অপশনটি আগে ফাইলের সাব মেনুতেই ছিলো কিন্ত নতুন ফটোশপ ভার্শনে এটিকে ফাইল – এক্সপোর্ট – সেভ ফর ওয়েব এমন অবস্থানে নেওয়া হয়েছে । কিন্ত এটির শর্টকাট টা সবাই বেশি ব্যাবহার করে থাকে (alt + shift + ctrl + s ) ।
ইমেজ অপ্টিমাইজ করার জন্য অনেক সাইট রয়েছে , যেমন টাইনি পিএনজি, ক্রাকেন ,অপ্টিমাইজিলা ইত্যাদি ।
এছাড়া ওয়ার্ডপ্রেস প্লাগিন রয়েছে , যেমন স্মাশ ইট , ই ডব্লিউ ডব্লিউ ডব্লিউ ইমেজ অপ্টিমাইজার ,ইমেজীফাই ইত্যাদি ।

সাইট রিসোর্স মিনিফাই করার উপায়

সাইট রিসোর্স মিনিফাই বলতে থিম এবং প্লাগিনের সিএসএস(css) এবং জাভা স্ক্রিপ্ট(js) ফাইল গুলিকে কম্প্রেস করা । এগুলি মিনিফাই করার জন্য আমরা কিছু সাইট ব্যাবহার করতে পারি যেমন মিনিফায়ার , ড্যানটুল , সিএসএস কমপ্রেসর , জেএস কম্প্রেস ইত্যাদি । এছাড়া প্লাগিনের সাহায্যে করা যায় , যেমন বেটার ওয়ার্ডপ্রেস মিনিফাই , ডব্লিঊপি সুপার মিনিফাই সহ অনেক ক্যাশ প্লাগিন দিয়েও মিনিফাই করা যায় সেগুলি নিয়ে নিচে আলোচনা করছি । তবে ম্যানুয়ালি মিনিফাই করা বেশি ভালো ।

ক্যাশ প্লাগিনের ব্যাবহার

ওয়েবসাইটে একসাথে অনেক ভিসিটর আসলে সাইট স্লো হয়ে যেতে পারে , তাই ক্যাশ প্লাগিন ব্যাবহার করলে সাইটের স্পীড 2x থেকে 5x পর্যন্ত বাড়তে পারে । সবসময় পুরো পেজ লোড হওয়ার পরিবর্তে ক্যাশ প্লাগিন একটি লোডের পরে পেজগুলিকে কপি করে পরে ক্যাশড ভার্সন ভিসিটরকে দেখিয়ে থাকে এতে সাইট স্লো কম হয়ে থাকে ।
আমরা যেসব ক্যাশ প্লাগিন ব্যাবহার করতে পারিঃ
১। ডব্লিউপি ফাস্টেস্ট ক্যাশ (এটির সেটিংস খুবই সোজা এবং অনেক ইফেক্টিভ , এটাতে মিনিফাই অপশন রয়েছে )
২। ডব্লিউপি সুপার ক্যাশ (এটির ক্যাশিং সিস্টেম ও বেশ ভালো )
৩। ডব্লিউথ্রি টোটাল ক্যাশ (এতেও মিনফাই অপশন সহ আরও অনেক অপশন রয়েছে)
৪। অটোঅপ্টিমাইজ (এটিও বেশ ভালো প্লাগিন এবং এটাতেও মিনিফাই অপশন রয়েছে )
ভাবছেন সবগুলিকে ভালো বলছি তাহলে কোনটা ব্যাবহার করবেন , আপনার যেটা ভালো লাগে সেটা ব্যাবহার করতে পারেন । আমার বেশি পছন্দ ডব্লিউপি ফাস্টেস্ট ক্যাশ।

ওয়ার্ডপ্রেস এবং থিম , প্লাগিন আপডেট রাখুন

আমরা জানি ওয়ার্ডপ্রেস একটি ওপেনসোর্স সিএমএস সফটওয়্যার এবং এটি রেগুলার আপডেট দিয়ে থাকে । আমদের উচিত ওয়ার্ডপ্রেসের রেগুলার আপডেট গুলি ইন্সটল করে সাইটকে আপডেটেড রাখা । কারণ ওয়ার্ডপ্রেস শুধু ফিচার অ্যাড করেনা বিভিন্ন বাগ ফিক্স করে থাকে । ওয়ার্ডপ্রেসে হাজার হাজার থিম এবং প্লাগিন রয়েছে যেগুলি থার্ড পার্টি ডেভেলপারদের তৈরি । যদি আমরা সেগুলি ব্যাবহার করি সেগুলিকেও আপডেটেড রাখতে হবে ।

হোমপেজ এবং আর্কাইভে এক্সসার্প্টস ব্যাবহার করুন

বাই ডিফল্ট ওয়ার্ডপ্রেস ফুল কনটেন্ট শো করে পোস্টে । যাতে দ্রুত লোড হয় এজন্য এক্সসার্প্টস বা সামারী শো করাতে হবে । ফুল কনটেন্ট শো করানোর আরেকটি খারাপ দিক হল ভিসিটর ফুল পোস্ট ভিউ কম করে থাকে , কারণ তারা সবটা পোস্ট আর্কাইভে পেয়ে যাচ্ছে ।

কমেন্ট বিভক্ত করুন

ফুল কমেন্ট লিস্ট শো করালে পোস্ট সিঙ্গেল পেজ ধীরে লোড হবে এইজন্য বিভক্ত(পেজিনেটেড) করে দিলে ভালো হয় । ওয়ার্ডপ্রেসে ডিফল্ট সেটিং রয়েছে এটা করার জন্য ।

সিডিএন ব্যাবহার করুন

সিডিএন(কনটেন্ট ডেলিভারি নেটওয়ার্ক) ব্যাবহার করলে সমস্ত ইউজারের জন্য সাইটের স্পীড আপ হবে । সিডিএন হল সারা বিশ্বে সার্ভারগুলির জন্য তৈরি একটি নেটওয়ার্ক। প্রতিটি সার্ভার আপনার ওয়েবসাইট আপ করতে ব্যবহৃত “স্ট্যাটিক” ফাইল সংরক্ষণ করবে।
কিছু সিডিএন সাইট আপনাদের জন্য :
১। ক্লাউডফ্লেয়ার (ফ্রিমিয়াম)
২। ম্যাক্সসিডিএন (পেইড)
৩। ইনক্যাপ্সুলা (ফ্রিমিয়াম)
৪ । অ্যামাজন ক্লাউডফ্রন্ট (পেইড- ব্যাবহার অনুযায়ী বিল )
৫ । সোয়ারমিফাই (ফ্রিমিয়াম)

ডিরেক্ট ভিডিও আপলোড করবেন না

যদি খুব প্রয়োজন না হয় ভিডিও সাইটে ডিরেক্ট আপলোড করবেন না , এতে ব্যান্ডউইথ বেশি খরচ হবে। ওয়ার্ডপ্রেসে ডিফল্ট এম্বেড () অপশন রয়েছে আপনি সহজেই ইউটিউব বা ভিমিও থেকে এম্বেড করতে পারবেন।

এনাবল জি জীপ কমপ্রেশন

জি- জীপ মেথড হল ফাইল কম্প্রেস করে দ্রুত লোড করে থাকে । এটি এইচটিএমএল এবং সিএসএস কে কম্প্রেস করে ৫০ -৭০% পর্যন্ত ফাইল সাইজ কমিয়ে দেয় , এজন্য সাইট কম সময়ে দ্রুত লোড হয় এবং ব্যান্ড উইথ কম ব্যাবহার হয় ।
প্রথমত জানব কিভাবে .htaccess এর মাধ্যমে জি- জিপ কমপ্রেশন চালু করা যায় :
জি- জিপ অ্যাপাচি সার্ভারে চালু করতে হলে নিম্নোক্ত কোড গুলি .htaccess এ যুক্ত করতে হবে ।


  # Compress HTML, CSS, JavaScript, Text, XML and fonts
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE application/x-font
  AddOutputFilterByType DEFLATE application/x-font-opentype
  AddOutputFilterByType DEFLATE application/x-font-otf
  AddOutputFilterByType DEFLATE application/x-font-truetype
  AddOutputFilterByType DEFLATE application/x-font-ttf
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE font/opentype
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE image/x-icon
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/xml

  # Remove browser bugs (only needed for really old browsers)
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  Header append Vary User-Agent

জি- জিপ এনজিএক্স সার্ভারে চালু করতে হলে নিম্নোক্ত কোড গুলি nginx.conf এ যুক্ত করতে হবে

gzip on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
gzip_vary on;
gzip_types text/plain text/css text/javascript image/svg+xml image/x-icon application/javascript application/x-javascript;

অনেক ক্যাশ প্লাগিনে জি- জিপ চালু করার অপশন থাকে । যেমন ডব্লিউপি ফাস্টেস্ট ক্যাশ -এ এই অপশন রয়েছে । এই ধরনের প্লাগিন ব্যাবহার করলে ম্যানুয়ালি করার প্রয়োজন নাই ।

লিভারেজ ব্রাউজার ক্যাশিং

ব্রাউজার ক্যাশিং ওয়েবসাইটের রিসোর্স ফাইল লোকাল কম্পিউটারে সংরক্ষণ করে থাকে । আর লিভারেজ ব্রাউজার ক্যাশিং হল ওয়েবমাস্টার ব্রাউজারকে নির্দেশ করে কিভাবে এই ফাইল ব্যাবহার করতে হবে ।
ক্যাশ -কন্ট্রোল হেডারস অ্যাপাচি সার্ভারে যুক্ত করতে নিম্নোক্ত লাইন গুলি .htaccess এ যুক্ত করুন :


Header set Cache-Control "max-age=84600, public"

এক্সপ্যায়ার হেডার অ্যাপাচি সার্ভারে যুক্ত করতে নিম্নোক্ত লাইন গুলি .htaccess এ যুক্ত করুন :

## EXPIRES HEADER CACHING ##

ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType application/javascript "access 1 month"
ExpiresByType application/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 2 days"

## EXPIRES HEADER CACHING ##

ক্যাশ -কন্ট্রোল হেডারস এনজিএক্স সার্ভারে যুক্ত করতে নিম্নোক্ত লাইন গুলি সার্ভার কনফিগ এ যুক্ত করুন:

location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
 expires 30d;
 add_header Cache-Control "public, no-transform";
}

এক্সপ্যায়ার হেডার এনজিএক্স সার্ভারে যুক্ত করতে নিম্নোক্ত লাইন গুলি সার্ভার কনফিগ এ যুক্ত করুন :

location ~*  \.(jpg|jpeg|gif|png)$ {
        expires 365d;
    }

    location ~*  \.(pdf|css|html|js|swf)$ {
        expires 2d;
    }

অপ্টিমাইজ ডাটাবেস

কিছুদিন জন্য ওয়ার্ডপ্রেস ব্যবহার করার পরে, আপনার ডাটাবেসের প্রচুর অপ্রয়োজনীয় তথ্য জমা হবে যা সম্ভবত আপনার আর কোনও প্রয়োজন নেই। ভালো পারফরম্যান্সের জন্য, আপনি সমস্ত অপ্রয়োজনীয় তথ্য থেকে পরিত্রাণ পেতে আপনার ডাটাবেসটি অপটিমাইজ করতে পারেন।
এটি করার জন্য প্লাগিন ব্যাবহার করতে পারেন :
১। ডব্লিউপি সুইপ
২। ডব্লিউপি অপ্টিমাইজ

রিডিউস এক্সটার্নাল এইচটিটিপি(http) রিকোয়েস্ট

ওয়ার্ডপ্রেস থিম এবং প্লাগিন অনেক ধরনের ফাইল লোড করে থাকে । যেমন সিএসএস ,জেএস , ইমেজ , ফন্ট ইত্যাদি । এই সমস্ত রিসোর্স অনেক সময় বাহিরের সাইট থেকে লোড করিয়ে থাকে । যেমন ফেসবুক , গুগল , আনলাইটিক্স সার্ভিসেস সাইট থেকে হতে পারে । এতে সাইটের এইচটিটিপি রিকোয়েস্ট বেড়ে সাইট স্লো করে থাকে । সেক্ষেত্রে আমাদের প্লাগিনের সিএসএস এবং জেএস গুলি আমাদের নিজস্ব হোস্টিং থেকে লোড করানো ভালো হবে ।
ঐ সমস্ত সিএসএস এর ক্ষেত্রে আগে সিএসএস কে ডিরেজিস্টার করতে হবে পরে সেটাকে থিমের কাস্টম সিএসএস বা নিউ সিএসএস রেজিস্টার করতে হবে ।
সিএসএস ডিরেজিস্টার করার উপায় :
নিচের কোড গুলি থিম ফাংশনে যুক্ত করুন এবং যে সি এস এস ডিরেজিস্টার করতে চান তার আইডি ব্যাবহার করুন

add_action( 'wp_print_styles', 'tecoys_deregister_styles', 100 );
function tecoys_deregister_styles() {
wp_deregister_style( 'fontawsome-css-css' );
wp_deregister_style( 'apsl-frontend-css-css' );
wp_deregister_style( 'contact-form-7-css' );
}

ডিরেজিস্টার এর পরে এই ফাইলের সিএসএস গুলি কাস্টম সিএসএস বা নিউ সিএসএস রেজিস্টার করতে পারেন ।
প্লাগিন জেএস ডিজাবলের উপায় :
একই উপায়ে আমরা ডিরেজিস্টার করবো

add_action( 'wp_print_scripts', 'tecoys_deregister_javascript', 100 );
 
function tecoys_deregister_javascript() {
wp_deregister_script( 'contact-form-7' );
wp_deregister_script( 'apsl-frontend-script' );
wp_deregister_script( 'another-plugin-script' )

ডিরেজিস্টার এর পরে এই ফাইলের জেএস গুলি কাস্টম জেএস বা নিউ জেএস রেজিস্টার করতে পারেন ।

আজ এই পর্যন্ত , আশা করি আপনাদের কাজে আসবে । সাইট স্পীড ঠিক রাখার জন্য ভালো মানের থিম ব্যাবহার করুন , কম প্লাগিন ব্যাবহার করুন অ্যার অবশ্যই ভালো মানের হোস্টিং ব্যাবহার করতে হবে। আর কিছু জানতে হলে কমেন্ট করুন ।

লেখক সম্পর্কে

অপু জামান

পিএইচপি ডেভেলপার এবং প্রযুক্তি প্রেমী। ফাংশন নিয়ে লজিক লিখতে ভাল লাগে, আর ভাল লাগে ঘুরতে। টেকয়েস'এর পাশাপাশি তাই টেকওয়ান্স'এও ঘুরি।

টি মন্তব্য

লিখেছেন অপু জামান

সাম্প্রতিক মন্তব্যগুলি

Pin It on Pinterest

Shares
Share This