Начните с https://example.com/products?sort=price&tag=summer#details. Введите newsletter, email, summer sale и hero link в source, medium, campaign и content.
Ожидаемый URL
Результат: https://example.com/products?sort=price&tag=summer&utm_source=newsletter&utm_medium=email&utm_campaign=summer+sale&utm_content=hero+link#details. Две исходные пары идут первыми без изменения написания, затем четыре новые пары, пробелы обозначены плюсами, а #details остаётся последним.
Ожидаемые данные
UTMLink показывает две сохранённые пары, ноль заменённых UTM и четыре добавленные пары. Фрагмент отмечен как сохранённый. Term и ID отсутствуют, а не добавлены с пустыми значениями. Эти данные доказывают только локальное преобразование: сервис не посещает example.com и не проверяет аналитику.
Повторите и проверьте результат
Загрузите проверенный пример в UTMLink или введите значения точно как указано. Соберите ссылку и посимвольно сравните каждый сохранённый сегмент, пару кампании и фрагмент с ожидаемой строкой. Счётчики объясняют преобразование без отправки адреса: сохранено — число сторонних исходных сегментов, заменено — число удалённых вхождений UTM в нижнем регистре, добавлено — число непустых итоговых полей. Измените одно необязательное значение, соберите снова и убедитесь, что старый результат исчез до появления нового. Очистите форму и перезагрузите страницу: история не должна вернуться, потому что первая версия намеренно не хранит введённые и созданные ссылки.