Использование скриптов AdWords для передачи цены с сайта

SEO Inweb
26-02-2021
74
Использование скриптов AdWords для передачи цены с сайта

Скрипти AdWords — інструмент програмного управління вашим обліковим записом, що покликаний прискорити, а в деяких завданнях повністю автоматизувати роботу з обліковим записом AdWords.

У цій статті я розповім про один корисний спосіб використання скриптів — передачі інформації, а саме ціни, з зовнішнього сайту в тіло оголошення.

Передісторія: ми рекламуємо наші послуги в AdWords, ціни на сайті вказані в гривнях, але змінюються відповідно до курсу долара. За нинішньої ситуації, коли курс не підвладний ніяким законам, щодня доводилося витрачати деякий час для оновлення цін в рекламній кампанії.


Пример отображения цены услуг на нашем сайте

За допомогою скриптів AdWords ми розв'язали невелику задачу.

 

Інформація про скрипти AdWords


Варто відзначити, що в мережі достатньо інформації з цього приводу і трохи погортавши Google Developers я знайшов два добре описаних приклади:


  • Ad Parameterizer
    https://developers.google.com/adwords/scripts/docs/solutions/parameterizer
    Параметрізатор оголошень. Приклад описує кілька важливих моментів — отримання зовнішніх даних з використанням json фіда, актуалізацію ключових слів і передачею необхідних параметрів в оголошення.

  • Sale Countdown
    https://developers.google.com/adwords/scripts/docs/solutions/sale-countdown
    Зворотний звіт до кінця акції. Тут все просто —"До кінця акції залишилося X днів і Y годин". Приклад простіше і без "наворотів", але в ньому більш зрозуміло показана передача параметрів в оголошенні. До речі, сам по собі дуже корисний скрипт, і ми обов'язково його будемо використовувати в промо-акціях.

 

 

Реалізація


Одразу зізнаюся, що я не програміст, можу приблизно зрозуміти сенс коду, але не більше. Тому я заручився підтримкою нашого програміста і ми почали працювати.

1. Робота зі скриптом в AdWords


Щоб почати роботу зі скриптами, заходимо в обліковий запис AdWords, Операції над декількома елементами, Скрипти. Натискаємо на "+ Скрипт" і починаємо роботу.

 

2. JSON фід


Перше що потрібно зробити, це сформувати json фід. Формується він на сайті. У нашому випадку потрібно передати два значення: ціну розробки корпоративного сайту та інтернет-магазину. Фід виглядав наступним чином:

{"data":{"corp":{"name":"[DEV] u041fu043bu0430u0442u043du044bu0439 u0448u0430u0431u043bu043eu043d
(u043au043eu0440u043fu043eu0440u0430u0442u0438u0432u043du044bu0439 u0441u0430u0439u0442) ","price":8100},"im":{"name":"[DEV]
u041fu043bu0430u0442u043du044bu0439 u0448u0430u0431u043bu043eu043d (u0438u043du0442u0435u0440u043du0435u0442-
u043cu0430u0433u0430u0437u0438u043d)","price":17550}}}

посилання: http://inweb.ua/for_addwords/

 

Ми успішно сформували json фід і щоб забрати з сайту необхідні параметри, нам залишається взяти готову функцію і підставити туди адресу нашого фіда:

function getData(){ 
var url = 'http://inweb.ua/for_addwords';
var json = Utilities.jsonParse(UrlFetchApp.fetch(url).getContentText());
var data = json.data; return data; }

 

 

В результаті ми отримаємо два параметри data.corp.price і data.im.price, які будуть містити відповідні актуальні значення вартості розробки корпоративного сайту й інтернет-магазину.

 

3. Обираємо групу об'яв


Скрипту необхідно вказати, в якій групі оголошень вносити зміни. Реалізувати це можна двома способами: звертатися до конкретної групи або до переліку (масиву) груп оголошень в обліковому записі.

 

 

Для звернення до конкретної групи оголошень, ім'я заданої групи необхідно оголосити в функції main ():

function main(){
var adGroup = getAdGroup('Цена Сайта');
...}

 

 

або перед функцією main () оголосити змінну var AD_GROUP_NAME = 'Ціна сайту' і звернутися до неї:

function main(){
var adGroup = getAdGroup('AD_GROUP_NAME');
...}

 

 

Функція звернення до обраної групи:

function getAdGroup(name) {
var adGroupIterator = AdWordsApp.adGroups()
.withCondition('Name = "' + name + '"')
.withLimit(1)
.get();
if (adGroupIterator.hasNext()) {
return adGroupIterator.next();
}
}

 

 

Щоб звернутися до переліку груп оголошень задаємо масив:

 

var AD_GROUP_NAMES = ['Цена Сайта', 'Стоимость разработки сайта'];

 

Функція звернення до переліку груп оголошень:

function getAdGroups(names) {
var predicateValues = "['" + names.join("','") + "']";
Logger.log(predicateValues);
return AdWordsApp.adGroups()
.withCondition('Name IN ' + predicateValues)
.withLimit(names.length)
.get();
}

4. Виконуємо необхідні дії


 

 

У нас є дані з сайту, є група або перелік груп оголошень, залишилося написати, а точніше підкоригувати функцію main () і отримати готовий скрипт:

 

Варіант 1: працюємо з однією групою оголошень

function main(){
var adGroup = getAdGroup('Цена Сайта'); // задаем имя группы объявлений
var keywordIter = adGroup.keywords().get();
var data = getData();
while (keywordIter.hasNext()) {
var keyword = keywordIter.next();
keyword.setAdParam(1, data.corp.price); //передаем первый параметр
keyword.setAdParam(2, data.im.price); // передаем второй параметр
}
} 
function getAdGroup(name) {
var adGroupIterator = AdWordsApp.adGroups()
.withCondition('Name = "' + name + '"')
.withLimit(1)
.get();
if (adGroupIterator.hasNext()) {
return adGroupIterator.next();
}
}
 
function getData() {
var url = 'http://inweb.ua/for_addwords/';
var json = Utilities.jsonParse(UrlFetchApp.fetch(url).getContentText());
var data = json.data;
return data;
}

 

 

Варіант 2: працюємо з масивом груп оголошень

var AD_GROUP_NAMES = ['Цена Сайта', 'Стоимость разработки сайта']; 
function main(){
var adGroups = getAdGroups(AD_GROUP_NAMES); // обращаемся к массиву групп
while (adGroups.hasNext()) {
var adGroup = adGroups.next();
var keywords = adGroup.keywords().get();
var data = getData();
while (keywords.hasNext()) {
var keyword = keywords.next();
keyword.setAdParam(1, data.corp.price); //передаем первый параметр
keyword.setAdParam(2, data.im.price); // передаем второй параметр
}
} 
function getAdGroups(names) {
var predicateValues = "['" + names.join("','") + "']";
Logger.log(predicateValues);
return AdWordsApp.adGroups()
.withCondition('Name IN ' + predicateValues)
.withLimit(names.length)
.get();
}
 
function getData() {
var url = 'http://inweb.ua/for_addwords/';
var json = Utilities.jsonParse(UrlFetchApp.fetch(url).getContentText());
var data = json.data;
return data;
}

 

5. Параметризація оголошення


 

 

Для того, щоб передати параметри в оголошення необхідно в текст оголошення додати вставку {param1} й {param2}, в які ми попередньо передали дані. Значення через двокрапку {param1:6000} це значення за замовчуванням.

{Keyword:Интересует цена сайта?}
Корпоративный сайт от {param1:6000} грн.
Интернет-магазин от {param2:14000} грн.
inweb.ua/{keyword:разработка-сайтов-недорого}

 

6. Розклад роботи скрипту


Ще одне корисне налаштування. В інтерфейсі можна задати розклад виконання скрипту, яке буде відповідати вашим потребам. У нашому випадку доцільно виконувати скрипт раз на добу — саме така частота оновлення курсу в нашій внутрішній системі.

 

Якщо ви не хочете використовувати розклад роботи скрипту, ви можете власноруч запускати виконання скрипту коли вам буде потрібно.

Огляд літератури


На додаток до двох офіційних прикладів, наведених вище, хотілося б поділитися невеликою добіркою статей, які я знайшов під час вивчення інформації про скрипти та вважаю їх по-своєму корисними.


  • https://netpeak.net/ru/blog/pyatiminutka-kontekstnoy-reklamy-vypusk-12/
    В "П'ятихвилинки контекстної реклами" Сергій Бахарь показує приклад використання готового скрипту.

  • https://aweb.ua/blog/skripty-v-google-adwords-kak-stat-guru-avtomatizacii/Цікава підбірка скриптів від Авеб  — мастхев ppc-фахівця. Приклади використання безкоштовних скриптів і посилання, де їх можна безоплатно взяти.

  • https://freshit.net/targetiruem-na-dozhd/
    Креативний кейс використання погодних скриптів. Хлопці зробили рекламну кампанію з доставки їжі, яка включалася якщо на вулиці був дощ.

  • https://habr.com/ru/post/229177//
    Стаття вищого рівня. Показано автоматизоване створення рекламної кампанії для інтернет-магазину з більш ніж 25 000 найменувань.

  • http://adwordsapi.blogspot.com/2009/11/discover-v2009-setting-ad-parameters.html
    Приклад описує параметризацію оголошення в залежності від ключового слова, яке викликало його показ. Реалізація приведена для AdWords API, але сама ідея цікава.

 

Больше не нужно искать и обзванивать диджитал-агентства!
Создайте тендер и получите предложения по цене и срокам от лучших веб-студий Украины.
Это бесплатно и займет 2 минуты. В каталоге 1500+ диджитал-агенств, готовых помочь в реализации ваших задач. Выберите и сэкономьте до 30% времени и бюджета!
Создать тендер
Популярные статьи в разделе SEO
SEO
SEO
21-04-2021
Гид по SEO — Тильда в действии Bonum
Что такое Tilda Publishing? Это простой и удобный конструктор сайтов с блочным порядком размещени...
SEO
SEO
22-04-2021
SEO-анализ конкурентов и как его провести Inweb
Как провести анализ конкурентов. Методы анализа конкурентов и как извлечь максимальную пользу пос...
SEO
SEO
22-04-2021
Обновление Google Page Experience готово к запуску в мае 2021 года — веб-мастеры, держитесь! Bonum
Вы узнаете, как изменения нового алгоритма Google могут повлиять на рейтинг вашей страницы. А так...
Bug