Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <script>
- function getUTMParameters() {
- const queryString = window.location.search;
- const urlParams = new URLSearchParams(queryString);
- const utmParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content'];
- const utmData = {};
- utmParams.forEach(param => {
- if (urlParams.has(param)) {
- utmData[param] = urlParams.get(param);
- }
- });
- return utmData;
- }
- function storeUTMParameters(utmData) {
- sessionStorage.setItem('utmData', JSON.stringify(utmData));
- }
- function getStoredUTMParameters() {
- const storedData = sessionStorage.getItem('utmData');
- return storedData ? JSON.parse(storedData) : null;
- }
- function appendUTMParametersToLinks(utmData) {
- const links = document.querySelectorAll('a');
- links.forEach(link => {
- const url = new URL(link.href);
- for (const [key, value] of Object.entries(utmData)) {
- url.searchParams.set(key, value);
- }
- link.href = url.toString();
- });
- }
- document.addEventListener('DOMContentLoaded', () => {
- const utmData = getUTMParameters();
- if (Object.keys(utmData).length > 0) {
- storeUTMParameters(utmData);
- }
- const storedUTMData = getStoredUTMParameters();
- if (storedUTMData) {
- appendUTMParametersToLinks(storedUTMData);
- }
- });
- </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement