Проблема
У меня есть формы, размещенные сторонней службой. Мы назовем это www.3rdpartyform.com.
У меня есть свой сайт, www.mysite.com.
Я хочу иметь возможность отслеживать трафик с помощью кампаний Google Analytics, ведущих на www.3rdpartyform.com.
Мое решение
Я создал целевую страницу www.mysite.com/redirected.
Он используется так:
www.mysite.com/redirected/?redirected_url=www.3rdpartyform.com/theform&utm_googlestuff=stuff
Страница по сути такая:
<?php $redirection_link = htmlspecialchars($_GET['redirected_url']); ?>
<html>
<head>
(google analytics script)
<!-- Should address any possible negative impact on SEO caused by redirect. -->
<meta name="robots" content="noindex, nofollow, noarchive">
</head>
<body>
<script>
var retryAttempts = 0;
function checkIfAnalyticsLoaded() {
console.log('Checking if GA loaded.');
if (window.ga && ga.create) {
console.log('GA loaded.');
redirect();
} else if (window.urchinTracker) {
console.log('Old GA loaded.');
redirect();
} else if (retryAttempts < 10) {
retryAttempts += 1;
setTimeout(checkIfAnalyticsLoaded, 500);
} else {
console.log('GA not loaded')
redirect();
}
}
function redirect() {
console.log('Redirecting');
setTimeout(function () {
window.location.href= '<?php echo $redirection_link; ?>';
}, <?php echo $time_to_redirect * 1000 ?>);
}
checkIfAnalyticsLoaded();
</script>
</body>
</html>
Как я думаю, это будет работать
Кто-то нажимает на ссылку, страница загружает мою аналитику Google и видит параметры URL-адреса кампании и регистрирует попадание, затем редирект перенаправляет пользователя на форму по адресу www.3rdpartyform.com/theform.
Мой вопрос
Я попытался найти решение, но не мог придумать, что искать, что дало соответствующие результаты. Есть ли лучшее решение моей текущей проблемы, чем то, что я пытаюсь сделать? Зарегистрирует ли Google Analytics просмотр/кампанию (даже если это отказ) с помощью этого решения?
Спасибо!
Обновленное решение
Это мое обновленное решение, основанное на ответе Max.
Чтобы свести на нет возможные негативные последствия перенаправления для моего SEO, я добавил метаданные nofollow, noindex. Не на 100% в этом решении, но кажется логичным.
Чтобы устранить условие гонки, я добавил функцию проверки загрузки GA.
Что касается проблемы Плохой UX/Скорость, я не вижу в этом проблемы с моей текущей конфигурацией реализации/целевой аудитории в настоящее время.
Я обновил свое решение выше.
Нерешенные проблемы
Хотел бы использовать события GA, как это предлагается SMX, чтобы предотвратить засчитывание обращений к этой странице как отказов. Тем не менее, я еще не возился с событиями GA, и ему нужно будет узнать о них, но пока нужно перейти к следующему проекту.