একক পৃষ্ঠা অ্যাপ্লিকেশন পরিমাপ

এই নির্দেশিকাটি বর্ণনা করে যে কীভাবে analytics.js ব্যবহার করতে হয় সেই সাইটের পৃষ্ঠার কার্যকলাপ পরিমাপ করার জন্য যার বিষয়বস্তু প্রথাগত পূর্ণ পৃষ্ঠা লোড ছাড়াই গতিশীলভাবে লোড হয়।

ওভারভিউ

একটি একক পৃষ্ঠা অ্যাপ্লিকেশন (এসপিএ) হল একটি ওয়েব অ্যাপ্লিকেশন বা ওয়েবসাইট যা প্রথম পৃষ্ঠা লোডের সময় সমস্ত সাইট জুড়ে নেভিগেট করার জন্য প্রয়োজনীয় সমস্ত সংস্থান লোড করে৷ ব্যবহারকারী যেমন লিঙ্কে ক্লিক করে এবং পৃষ্ঠার সাথে ইন্টারঅ্যাক্ট করে, পরবর্তী বিষয়বস্তু গতিশীলভাবে লোড হয়। প্রথাগত পৃষ্ঠা নেভিগেশন অনুকরণ করতে অ্যাপ্লিকেশনটি প্রায়শই ঠিকানা বারে URL আপডেট করবে, কিন্তু অন্য পূর্ণ পৃষ্ঠার অনুরোধ কখনই করা হয় না।

ডিফল্ট গুগল অ্যানালিটিক্স ট্যাগ প্রথাগত ওয়েবসাইটগুলির সাথে ভাল কাজ করে কারণ ব্যবহারকারীরা একটি নতুন পৃষ্ঠা লোড করার সময় স্নিপেট কোডটি চালানো হয়। যাইহোক, একটি একক পৃষ্ঠার অ্যাপ্লিকেশনের জন্য যেখানে সাইটটি সম্পূর্ণ পৃষ্ঠা লোড হওয়ার পরিবর্তে গতিশীলভাবে নতুন পৃষ্ঠার সামগ্রী লোড করে, analytics.js স্নিপেট কোড শুধুমাত্র একবার চলে। এর মানে পরবর্তী (ভার্চুয়াল) পেজভিউ ম্যানুয়ালি ক্যাপচার করতে হবে কারণ নতুন কন্টেন্ট লোড হয়।

ভার্চুয়াল পেজভিউ ট্র্যাক করা

যখন আপনার অ্যাপ্লিকেশনটি গতিশীলভাবে সামগ্রী লোড করে এবং ঠিকানা বারে URL আপডেট করে, তখন আপনার ট্র্যাকারে সংরক্ষিত ডেটাও আপডেট করা উচিত।

ট্র্যাকার আপডেট করতে, set কমান্ড ব্যবহার করুন এবং নতুন page মান সরবরাহ করুন:

ga('set', 'page', '/new-page.html');

আপনি নতুন পৃষ্ঠা মান সেট করার পরে, প্রেরিত সমস্ত পরবর্তী হিট সেই নতুন মান ব্যবহার করবে। একটি পেজভিউ রেকর্ড করতে, ট্র্যাকার আপডেট করার সাথে সাথে একটি পেজভিউ হিট পাঠান।

ga('set', 'page', '/new-page.html');
ga('send', 'pageview');

যদিও টেকনিক্যালি পেজভিউ হিটের জন্য send কমান্ড তৃতীয় প্যারামিটার হিসাবে একটি ঐচ্ছিক page ক্ষেত্রকে গ্রহণ করে, একক পৃষ্ঠার অ্যাপ্লিকেশনগুলি পরিমাপ করার সময় page ক্ষেত্রটিকে সেভাবে পাস করা বাঞ্ছনীয় নয়। এর কারণ হল send কমান্ডের মাধ্যমে পাস করা ক্ষেত্রগুলি ট্র্যাকারে সেট করা হয় না—এগুলি শুধুমাত্র বর্তমান হিটের ক্ষেত্রে প্রযোজ্য। ট্র্যাকার আপডেট না করা সমস্যা সৃষ্টি করবে যদি আপনার অ্যাপ্লিকেশন কোনো নন-পেজভিউ হিট (যেমন ইভেন্ট বা সামাজিক মিথস্ক্রিয়া) পাঠায়, কারণ সেই হিটগুলি ট্র্যাকার তৈরি করার সময় যে page মান ছিল তার সাথে যুক্ত হবে।

একই সম্পদের জন্য একাধিক ইউআরএল পরিচালনা করা

কিছু এসপিএ ডায়নামিকভাবে কন্টেন্ট লোড করার সময় শুধুমাত্র URL-এর হ্যাশ অংশ আপডেট করে। এই অনুশীলনটি এমন পরিস্থিতিতে নিয়ে যেতে পারে যেখানে অনেকগুলি ভিন্ন পৃষ্ঠার পথ একই সংস্থানকে নির্দেশ করে। এই ধরনের ক্ষেত্রে, সাধারণত একটি ক্যানোনিকাল URL বেছে নেওয়া এবং শুধুমাত্র সেই page মানটি Google Analytics-এ পাঠানোই ভালো।

উদাহরণ স্বরূপ, এমন একটি ওয়েবসাইট বিবেচনা করুন যার "আমাদের সম্পর্কে" পৃষ্ঠাতে নিম্নলিখিত URLগুলির যেকোনো একটির মাধ্যমে পৌঁছানো যেতে পারে:

  • /about.html
  • /#about.html
  • /home.html#about.html

আপনার রিপোর্টে ডুপ্লিকেশন এড়াতে, এই সমস্ত পেজভিউকে /about.html হিসাবে ক্যাপচার করা ভাল।

গুরুত্বপূর্ণ বিবেচনা

ডকুমেন্ট রেফারার আপডেট করবেন না

আপনি যখন create কমান্ড ব্যবহার করে একটি ট্র্যাকার অবজেক্ট তৈরি করেন, তখন document.referrer এর মান ট্র্যাকারের referrer ক্ষেত্রে সংরক্ষণ করা হয়। একটি একক পৃষ্ঠার অ্যাপ্লিকেশনের পরিপ্রেক্ষিতে যা সম্পূর্ণ পৃষ্ঠা লোড ব্যবহার করে না, referrer ক্ষেত্রটি সর্বদা একই থাকবে৷

তা সত্ত্বেও, পেজভিউ হিট পাঠানোর আগে ম্যানুয়ালি রেফারার ফিল্ড আপডেট করার প্রয়োজন নেই। Google Analytics স্বয়ংক্রিয়ভাবে সঠিক নেভিগেশন পথ নির্ধারণ করতে সক্ষম।

নথির অবস্থান আপডেট করবেন না

একইভাবে ট্র্যাকার referrer ক্ষেত্রের জন্য document.referrer ব্যবহার করে, এটি location ক্ষেত্রের জন্য document.location ব্যবহার করে, যাতে URL-এর শেষে যুক্ত করা ক্যোয়ারী প্যারামিটারের আকারে প্রচারের ডেটা বা অন্যান্য মেটা ডেটা থাকতে পারে।

প্রচারাভিযানের ক্ষেত্র বা অন্যান্য মেটা ডেটা যা Google Analytics পরীক্ষা করছে তা আপডেট করলে বর্তমান সেশন শেষ হতে পারে এবং একটি নতুন সেশন শুরু হতে পারে। এই সমস্যা এড়াতে, একটি একক পৃষ্ঠা অ্যাপ্লিকেশনে ভার্চুয়াল পৃষ্ঠাদর্শন পরিমাপ করার সময় location ক্ষেত্র আপডেট করবেন না। পরিবর্তে page ক্ষেত্র ব্যবহার করুন.

নতুন ট্র্যাকার তৈরি করবেন না

জাভাস্ক্রিপ্ট ট্র্যাকিং স্নিপেট ঐতিহ্যগত ওয়েবসাইটের জন্য যা করে তা অনুকরণ করার প্রয়াসে একটি একক পৃষ্ঠার অ্যাপে নতুন ট্র্যাকার তৈরি করবেন না। এটি করার ফলে উপরে বর্ণিত একটি ভুল রেফারারের পাশাপাশি ভুল প্রচারাভিযানের ডেটা পাঠানোর ঝুঁকি থাকে।