Перейти к содержимому

Как передать get параметры в url

  • автор:

Работа с параметрами запроса в URL, с примером из реальной практики.

В статье разберем что такое параметры запроса, познакомимся c так называемыми utm-метками, и научимся работать с параметрами запроса на примере одной ситуации из моей практики.

Начнем с теории.

Внимание! Поскольку статья для начинающих веб-разработчиков, многие понятия в статье даются в упрощенном виде для облегчения понимания.

Параметры запроса

Зачастую, кроме адреса страницы сайта, в ссылке требуется передавать какие-то дополнительные параметры.

Представим, что есть каталог товаров в интернет-магазине. В каталоге может быть сотни и тысячи наименований товара, и, если выводить их на одной странице, она получится просто огромной, и будет грузится долгое время.

Всем известен выход из этой ситуации: нужно разбить каталог на страницы. Все вы видели такие страницы, там десять или двадцать товаров, а также ссылки на другие страницы каталога.

Как же сформированы подобные ссылки? Вот здесь-то и используются параметры запроса в URL.

Часто параметры запроса называют GET-параметрами. Это не совсем верно. Да, при запросе методом GET, эти параметры видны в строке браузера, но их с тем же успехом можно передавать и POST-запросом.

Посмотрите на адрес:

https://someshop.ru/catalog/iphone?page=1&perpage=20

  • https – это протокол, по которому идет передача данных (в данном случае защищенный http);
  • someshop.ru – доменное имя хоста (часто просто говорят «домен»);
  • catalog/iphone – так называемый «Путь» до конкретной страницы на сайте, часто бывает иерархическим, при этом составные части пути разделяет прямой слэш /;
  • page=1&perpage=20 – строка запроса (как раз состоящая из параметров).

Вот именно строку запроса, в большинстве случаев называют GET-параметрами.

Эта строка состоит из пар имя_параметра=значение_параметра.

Пары разделены между собой амперсандом &.

Строка запроса отделена от адреса (с путем) знаком вопроса ?

В адресе выше мы имеем два параметра запроса:

  • page со значением 1
  • perpage со значением 20

Они означают, что ссылка ведет на 1-ю страницу каталога, и выводить на странице нужно 20 товаров.

UTM-метки

Одним из распространенных примером применением параметров запроса являются так называемые UTM-метки.

UTM-метки – это, по сути, набор параметров запроса с заданными именами.

Они «де-факто» являются стандартом меток для сбора статистики. Практически все системы аналитики, CRM-системы, многочисленные сервисы из самых разных областей, поддерживают работу с UTM-метками.

Имена основных меток:

  • utm_source — источник перехода;
  • utm_medium — тип трафика;
  • utm_campaign — название рекламной кампании;
  • utm_content — дополнительная информация по каналу рекламы;
  • utm_term — ключевая фраза.

Пример из практики

Я технически поддерживаю один из обучающих проектов.

Имела место следующая ситуация.

  • Есть лендинг тренинга, в котором можно участвовать как платно (с расширенными возможностями), так и бесплатно (базовый вариант).
  • На этот лендинг «льется трафик» с различных рекламных систем (яндекс.директ, вконтакте, фэйсбук, партнеры…).
  • Все рекламные ссылки на этот лендинг размечены utm-метками.
  • В свою очередь CRM-система, используемая на проекте, поддерживает работу с UTM-метками и таким образом можно считать выгоду от того или иного канала рекламы, соотнося расходы и продажи по каждому каналу.
  • На лендинге имеются 2 ссылки для платного и бесплатного участия. Ссылка для бесплатного участия ведет на отдельную страницу, где находится форма, заполнив которую, человек попадает в группу в CRM для бесплатного участия в тренинге.

Проблема была в том, что при переходе по ссылке на страницу с формой, UTM-метки туда не передавались, и, соответственно, невозможно было понять по какому каналу рекламы пришел человек, который заполнил эту форму.

Формулируем задачу для решения этой проблемы:
нужно взять UTM-метки из строки запроса лендинга и подставить их в ссылку на страницу с формой.

Сделать это нужно было максимально быстро, т.е. «вчера» поскольку на страницу уже шел трафик.

Работа с параметрами запроса на сервере (PHP)

Задача была решена парой строчек кода на PHP.

Ниже код двух страничек, первая это эмуляция лендинга со ссылкой на эмуляцию страницы с формой, вторая это эмуляция страницы с формой.

Вторая страница нужна, чтобы вы могли скопировать ее посмотреть результат перехода по ссылке с лендинга.

Как передать get параметры в url

Передача нескольких параметров GET выполняется почти при каждом запросе к серверу. Таких параметров не должно быть слишком много, чтобы их легче было контролировать со стороны браузера и сервера. Иначе поисковая система будет воспринимать разные страницы за дубли.

  1. Что такое GET-параметры
  2. Какое количество параметров GET считается правильным
  3. Как просканировать сайт и определить количество GET-параметров
  4. Заключение

Что такое GET-параметры

GET-запрос — метод передачи данных от клиента к серверу с целью получения информации, указанной с помощью конкретных GET-параметров.

Это публичные данные, доступные при повторном просмотре ссылки в истории. Такой запрос актуально использовать при неизменных данных в адресной строке. То есть при каждом обращении к странице с заданными параметрами ее адрес остается постоянным.

GET-запрос состоит из домена, адреса страницы и параметров, которые следуют после знака «?». Формат одного параметра выглядит так: «ключ=объяснение». Такой вид имеет весь запрос:

http://site.ru/index.php?name=Катя&surname=Иванова

где name — первый параметр, а surname — второй параметр.

Этот же запрос в формате РНР :

’; echo ‘Фамилия: ‘ . $_GET[‘surname’] . ‘
’; ?>,

где параметр if определяет условие: если существует параметр name , пусть он выведется на экран.

В результате браузер выдаст такую информацию:

Имя: Катя Фамилия: Иванова

При передаче личной информации нет надобности использовать GET запрос и параметры по причине отсутствия конфиденциальности. Информация с адресной строки открыта для пользователей.

Применение такого запроса имеет смысл в случае потребности сохранить, отправить ссылку. Для передачи секретной информации лучше использовать запрос типа POST. Страницы, запросы на которые передаются параметром GET, всегда имеют статичный вид.

Какое количество параметров GET считается правильным

Один запрос включает несколько параметров GET. Их количество не ограничено протоколом http. Лимиты в размере запроса есть со стороны сервера и браузера. У каждого из них есть свой максимальный размер для приема/передачи данных. Если длина превысит этот лимит, запрос будет урезан.

Не существует конкретной максимальной величины GET-запроса. Один сервер может принимать максимум 8 Кб, а другой — 16 Кб. Средний размер запроса колеблется в пределах 512-1024 Кб.

Фактически в одном таком запросе должно быть не больше 5 параметров, иначе каждый из них будет сложно контролировать со стороны сервера и браузера. Если нужно передать большое количество информации, рекомендуется использовать метод POST.

При использовании человекопонятных URL (ЧПУ) передача нескольких параметров GET выполняется в скрытом формате. Чтобы увидеть запрос полностью, необходимо на время отключить ЧПУ.

Как передать GET параметр

введите сюда описание изображения

Всем привет! Столкнулся с задачей передачи GET параметра в ссылку. При переходе к пример с фейсбука, нужно подставить в ссылку другой номер телефона и другой её параметр. К примеру у меня есть ссылка с номером : Её код:

Мне нужно как-то реализовать, что бы при переходе к примеру с того же фейсбука эта ссылка меняла свое значение на следующий:

Не судите строго, ещё учусь Буду благодарен за любую подробную информацию!
Отслеживать
задан 1 дек 2017 в 8:57
Andrii Khmelovskyi Andrii Khmelovskyi
165 2 2 серебряных знака 12 12 бронзовых знаков

Не совсем понятно, откуда Вы берете параметры. Я правильно понял, что при клике на линку на фейсбуке, Вам нужно, чтобы Ваш сайт/приложение открывалось с разными параметрами? Т.е., если это переход с фейсбука — подставляет один параметр. Если это прямое открытие, — оставляем все, как есть?

1 дек 2017 в 9:03

@Mr.Brightside: Да, вы абсолютно правы. Нужно сделеать именно так. как это реализовать? Подскажите пожалуйста!)

1 дек 2017 в 9:12

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Если я правильно понял вопрос, то есть 2 кейса.

Переход по линке с Facebook

Думаю, что на facebook у вас есть некая группа, где вы указываете ссылки для перехода на Ваш сайт.

В этом случае, эту ссылку на фейсбуке можно сделать такой:

my-link-on-my-website.com?tel=11111 

Далее, при загрузке уже вашего сайта, смотреть, что есть в url и в зависимости от этого менять содержимое контейнера:

window.onload = function() < //onLoad запустится при загрузке сайта var url_string = window.location.href var url = new URL(url_string); var param = url.searchParams.get("tel"); if(param) < //Если есть параметр, то выполняем замену текста var link = document.getElementById('myLink'); link.href = 'http://example?/tel=4352235643'; link.innerHTML = '4352235643'; >>; 

И Ваша разметка поменяется на:

Что такое onLoad и как его кушать описано тут

Прямой переход

При прямом переходе в адресной строке не будет параметров. Событие onLoad все также вызовется, но ничего не сделает, как раз из-за отсутствия параметров.

Я просто привел пример, как это можно сделать, но это лишь один из возможных вариантов. К тому же, требующий более щепетильных проверок.

  • Если вы используете фреймворк, то это может помочь Вам выполнить подобную обработку
  • Я бы проверял, так же, значение параметра. Дело в том, что GET параметры может подставить в ссылку любой и, если вы будете просто проверять, если ли параметр tel или нет, то выводимое в Вашей ссылки значение может оказаться неожиданным =)
  • Кроме того, возможно решение через просмотр истории, если у Вас есть доступ к бэкенду. JavaScript не позволяет получать доступ к предыдущим URL, только к навигации.

Параметры URL и их использование

При построении ссылок веб-страниц, а также в работе с трафиком и его источниками используют URL-параметры. Это установленные значения в линке, которые добавляются после доменного имени для динамической передачи дополнительной информации. С помощью этих переменных, ваша страница или подстраница сайта становится более гибкой, что позволяет поднять её в поисковой выдаче и увеличить количество посещений. По сути, устанавливая параметры URL в конечную ссылку, вы тем самым можете настроить передачу всевозможных данных, которые будут фиксироваться в статистике и позволят проанализировать эффективность отработанной кампании.

Обзор URL параметров

Прежде всего, их роль заключается в предоставлении дополнительной информации о вашем веб-сайте, чем вы занимаетесь, кто вы и т.д. В зависимости от того, какие переменные добавлены в URL-ссылку или шаблон страниц, поисковые системы будут обрабатывать её части, группируя подобные и исключая возможность выдачи дублируемого контента в результатах. Есть разные примеры настроек линок для дальнейшей индексации и исключения повторов. Допустим, это онлайн-магазин одежды. В настройке ссылки кампании, динамические параметры помогут поисковой системе выбрать и показать один и тот же контент, только под разными адресами и так, чтобы это совпадало с данными источника трафика. Например, если пользователи из разных стран. Говоря простым языком, установленные параметры URL служат индикатором для передачи данных с источника, что в процессе обеспечивает эффективную расшивку трафика на целевые офферы. Однако для того чтобы этот механизм отрабатывал правильно, нужно понимать, как именно и какие значения вписывать.

Применение параметров URL

Не стоит торопиться добавлять множество супер важных параметров в URL-адрес кампании. Сначала нужно понимать, как это сделать правильно, чтобы индексации прошла успешно и ваша веб-страница или подстраница поднялась в выдаче. Рассмотрим примеры построения линок.

https :// www . onlinestore . com /

Если разбить адрес на части, то сначала идёт протокол – https :// (англ. HyperText Transfer Protocol Secure ) и за ним следует доменное имя страницы, в нашем случае – это www . onlinestore . com .

Теперь, мы добавим параметр, который состоит из переменной и значения. Выглядит это так:

З нак вопроса «?» это символ, который указывает на начало запроса. Ставится он в конце исходной ссылки. Знак равенства «=» отделяет переменную от значения и образует пару.

Таким образом, мы получаем следующий URL-адрес:

https :// www . onlinestore . com ? parameter = value

Если вы хотите указать не одну, а несколько пар параметров, используйте символ амперсанда «&», чтобы отделить последующие пары значений. Пример ниже:

https :// www . onlinestor . com ? product = socks & color = black & size = m

В случае работы с трекером, вы можете добавлять динамические параметры в URL -ссылку. Их вписывают немного другим способом, а именно:

https :// www . onlinestore . com ? value =

Переменная в фигурных скобках сообщает системе, что вы хотите получить обратно данные этого значения после того как пользователь кликнул на рекламу. Так, трекер получает данные с источника трафика и записывает их в статистику.

Это самый простой способ передать параметры URL на любую веб-страницу, оффер или лендинг, используя HTML код. Однако есть примеры использования этих параметров в php и JavaScript для передачи значений, их хранения, сокрытия или трекинг. Подбирая формат включения переменных в код, вы сможете настроить определённую логику для сбора необходимой информации по трафику.

Кроме того, отработка параметров также зависит от метода HTTP. Чаще всего используют get параметры в адресной строке, чтобы запрашивать данные с источников.

URL get параметры

Данные значения предоставлены в форме запроса и работают на приём данных с источника трафика, которые в последствие передаются через трекер на сторону партнёрской сети. Их ещё называют токенами, которые устанавливаются в конце ссылки кампании для передачи статистических и динамических значений. Использование таких токенов, не зависимо от их количества, позволяют настроить уникальные страницы с get-параметрами. К примеру, вы можете настроить подстановку значений:

“Важная информация для пользователей >!”

Здесь, в значение > подставляется тип оперативной системы: Android или iOS. В зависимости от полученных данных, система определит устройство и покажет соответствующий контент на целевой странице. Подобным образом, вы можете отследить различные переменные в URL-адресах, такие как страна, язык, город, тип трафика, устройство, браузер, и т.д. Трекер используют для оптимизации процесса, когда вы настраиваете несколько кампаний сразу и отправляете пользователей на разные страницы.

В дополнение, параметры URL позволяют определить, какая кампания отработала лучше с разными источниками трафика. Добавляя их в линку, вы собираете статистику по всем кампаниям и расшитому трафику на конкретные лендинги и офферы.

Как работать с параметрами в AdsBridge

Главное преимущество трекинг платформ в том, что они автоматизируют настройки URL-адресов для эффективной расшивки трафика от источников к партнёркам. Современный трекер позволяет вам контролировать потоки и распределять пользователей на конкретные страницы по множеству параметров. A dsBridge – одно из лидирующий SaaS-решений с полноценным функционалом, кастомными настройками и авто-оптимизацией. Работая с URL-параметрами на AdsBrdige, вы экономите много драгоценного времени на настройках и получение подробной статистики для дальнейшего анализа. Таким образом, вы не только создаёте уникальные линки, но и собираете полную аналитику по их эффективности.

При создании URL кампании в системе AdsBridge , вы можете указать ValueTrack переменные, которые хотите получать с источника и передавать на веб-сайт. Данный тип значений помогает собрать данные по совершённому клику, которые в дальнейшем учитываются в статистике. Но для этого, вам также понадобятся макросы с источника трафика, чтобы получать статистические и динамические данные.

Платформа также предоставляет удобный сервис по сокращению ссылок. Когда вы добавляете более пяти параметров в одну линку, она становится очень громоздкой. На AdsBridge такую URL-строку можно сократить с помощью инструмента Index Page. При этом все параметры группируются и добавляются к домену. Отрабатывать такая ссылка будет также:

http :// onlinestore . com / c /1234567? click _ id =< click _ id >& token 1=

С помощью этой функции, намного проще работать с конечной ссылкой кампании и устанавливать её на источники. Сокращенные URL-строки упрощают процесс модерации на Google AdWords. По сути, вы будете получать все данные в статистике по запрашиваемой информации только, вместо длинной полосы в адресной строке, у вас будет отображаться короткая линка.

В заключении

Параметры URL играют важную роль в индексации веб-сайта, а также во время клика, когда пользователей редиректят на целевые офферы. Данные переменные также помогают собрать и записать полезную информацию о трафике, обеспечить более точный таргетинг и избежать дублирование контента. А если вы используете трекер, то создавать URL-адреса с добавлением этих значений не составит труда. Без дополнительных параметров в URL -строке, кампании рискуют попасть в бан. Чтобы они отрабатывали успешно и ваша веб-страница или подстраница приносила результат, убедитесь, что установленные значения и переменные в URL-адресе отрабатывают правильно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *