@sergeybaldej

Как добавить вариативность текста в код, в зависимости от UTM?

Добрый день! как можно добавить вариативность текста
"?text=Привет!%20Пришлите%20мне%20цены%20на%20рыбку!`;" в зависимости от UTM метки

<div id="#rec530783089">
  <a href="#"></a>
</div>

<script>

const phones = [
  { p: '9171857450', c: 60 },
  { p: '9880735438', c: 20 },
  { p: '9880735439', c: 20 },
  { p: '9880735779', c: 0 },
  { p: '9170997305', c: 0 },
  { p: '9170997493', c: 0 },
  { p: '9880634879', c: 0 },
  { p: '9170996154', c: 0 },
  { p: '9880728447', c: 0 },
  { p: '9880728627', c: 0 },
  { p: '9880728253', c: 0 },
  { p: '9880728326', c: 0 },
  { p: '9880728559', c: 0 },
  { p: '9880728625', c: 0 },
  { p: '9880690573', c: 0 },
  { p: '9880699941', c: 0 },
  { p: '9880706053', c: 0 },
  { p: '9880706224', c: 0 },
  { p: '9881757166', c: 0 },
  { p: '9881757181', c: 0 },
  { p: '9881757131', c: 0 },
  { p: '9897925732', c: 0 },
  { p: '9881755311', c: 0 },
  { p: '9897925778', c: 0 },
  { p: '9897949247', c: 0 },
  { p: '9171816218', c: 0 },
  { p: '9171817209', c: 0 },
  { p: '9897921756', c: 0 },
];

 const linkElement = document.querySelector('#rec530783089 a');
 
const chancesTotal = phones.reduce((acc, { c }) => acc + c, 0);
const selected = Math.floor(Math.random() * chancesTotal);
let phone;
for (let i = 0, sum = 0; i < phones.length; i++) {
  sum += phones[i].c;
  if (selected < sum) {
    phone = phones[i].p;
    break;
  }
}
const randomUrl = `https://wa.me/${phone}?text=Привет!%20Пришлите%20мне%20цены%20на%20рыбку!`;

 linkElement.href = randomUrl;
</script>
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
const params = (new URL(document.location)).searchParams;
const utmCampaign = params.get('utm_campaign');

const campaignTexts = {
  'vk_001': 'Привет, куплю ваших слонов в ВК!',
  'vk_002': 'Привет, куплю ваших слонов в группе!',
  'fb_001': 'Привет, куплю ваших слонов в Facebook!',
};
const text = encodeURIComponent(campaignTexts[utmCampaign] ?? 'Привет по умолчанию!');
const randomUrl = `https://wa.me/${phone}?text=${text}`;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
21 нояб. 2024, в 22:21
3000 руб./в час
21 нояб. 2024, в 21:42
100000 руб./за проект
21 нояб. 2024, в 21:30
500 руб./за проект