ga ऑब्जेक्ट का नाम बदलें

कुछ मामलों में, आपको अपने पेज में analytics.js जोड़ना हो सकता है, लेकिन ga वैरिएबल का इस्तेमाल पहले से ही किसी और काम के लिए किया जा रहा है. इससे निपटने के लिए, analytics.js की मदद से ग्लोबल ga ऑब्जेक्ट का नाम बदला जा सकता है.

ग्लोबल ऑब्जेक्ट का नाम बदलें

Google Analytics टैग की मदद से, छोटा किए गए फ़ंक्शन में पास किए गए फ़ाइनल पैरामीटर को बदलकर, ग्लोबल ga ऑब्जेक्ट का नाम बदला जा सकता है. आपको साथ ही, कमांड सूची के लिए शुरू की गई सभी बातचीत को ga() से चुने गए नाम में अपडेट करना होगा.

उदाहरण के लिए, अगर आपको ga ऑब्जेक्ट का नाम बदलकर analytics करना है, तो टैग को इस तरह से बदला जा सकता है:

<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','analytics');

analytics('create', 'UA-XXXXX-Y', 'auto');
analytics('send', 'pageview');
</script>
<!-- End Google Analytics -->

ग्लोबल ऑब्जेक्ट का मैन्युअल नाम बदला जा रहा है

ग्लोबल ऑब्जेक्ट का नाम इसलिए बदला जा सकता है, क्योंकि analytics.js जब लोड होता है, तब यह GoogleAnalyticsObject नाम के ग्लोबल वैरिएबल पर स्टोर की गई स्ट्रिंग खोजता है. अगर उसे वह वैरिएबल मिलता है, तो वह ग्लोबल कमांड सूची के लिए नए नाम के तौर पर स्ट्रिंग के नाम का इस्तेमाल करता है.

उदाहरण के लिए, अगर analytics.js लोड करने के लिए jQuery के $.getScript तरीके का इस्तेमाल किया जा रहा है, तो इस कोड से ग्लोबल ऑब्जेक्ट का नाम बदला जा सकता है:

<script>
// Instructs analytics.js to use the name `analytics`.
window.GoogleAnalyticsObject = 'analytics';

// Use jQuery to load analytics.js.
$.getScript('//www.google-analytics.com/analytics.js', function() {

  // Creates a tracker and sends a pageview using the renamed command queue.
  analytics('create', 'UA-12345-1', 'auto');
  analytics('send', 'pageview');
});
</script>

वैकल्पिक एसिंक्रोनस टैग

स्टैंडर्ड Google Analytics टैग से अलग, वैकल्पिक एसिंक्रोनस टैग ग्लोबल ga ऑब्जेक्ट का नाम बदलने के लिए डिफ़ॉल्ट रूप से सहायता नहीं देता है.

हालांकि, ऊपर बताई गई तकनीक का इस्तेमाल करके, ग्लोबल ga ऑब्जेक्ट का नाम बदला जा सकता है. साथ ही, वैकल्पिक एसिंक्रोनस टैग से पहले से लोड किए जाने वाले सभी फ़ायदे पाए जा सकते हैं.

वैकल्पिक एसिंक्रोनस टैग के नीचे दिए गए बदलाव किए गए वर्शन में GoogleAnalyticsObject वैरिएबल को analytics पर सेट किया गया है. साथ ही, ga के सभी इंस्टेंस का नाम बदलकर analytics भी कर दिया गया है:

<!-- Google Analytics -->
<script>

// Instructs analytics.js to use the name `analytics`.
window.GoogleAnalyticsObject = 'analytics';

// Creates an initial analytics() function.
// The queued commands will be executed once analytics.js loads.
window.analytics = window.analytics || function() {
  (analytics.q = analytics.q || []).push(arguments)
};

// Sets the time (as an integer) this tag was executed.
// Used for timing hits.
analytics.l = +new Date;

// Creates a default analytics object with automatic cookie domain configuration.
analytics('create', 'UA-12345-1', 'auto');

// Sends a pageview hit from the analytics object just created.
analytics('send', 'pageview');
</script>

<!-- Sets the `async` attribute to load the script asynchronously. -->
<script async src='//www.google-analytics.com/analytics.js'></script>
<!-- End Google Analytics -->