تتيح "إعلانات Google" استخدام مجموعة متنوعة من أنواع الإعلانات، مثل الإعلانات النصية والمصوّرة والإعلانات على الأجهزة الجوّالة. يغطّي هذا الدليل كيفية إنشاء الإعلانات واستردادها وإعداد تقارير عنها باستخدام نصوص "إعلانات Google" البرمجية. للحصول على نظرة عامة حول جميع أنواع الإعلانات المتوافقة مع "إعلانات Google"، اطّلِع على دليل واجهة برمجة التطبيقات.
الإنشاء
يمكن للبرامج النصية إنشاء إعلانات باستخدام الطريقة newAd() في مثيلات AdGroup. تعرض هذه السمة
AdBuilderSpace
الذي ينشئ أدوات إنشاء لأنواع الإعلانات المتوافقة.
يوضّح المقتطف التالي كيفية إنشاء إعلان متجاوب على شبكة البحث:
let adOperation = adGroup.newAd().responsiveSearchAdBuilder()
.withHeadlines(["Headline 1", "Headline 2", "Headline 3"])
.withDescriptions(["Description 1", "Description 2"])
.withFinalUrl("http://www.example.com")
.withPath1("path1")
.withPath2("path2")
.build();
فحص
تتوفّر بعض المعلومات المرتبطة بجميع أنواع الإعلانات مباشرةً من
Ad، مثل معرّف الإعلان وحالة الموافقة عليه. بالإضافة إلى ذلك، يمكن إيقاف أي إعلان مؤقتًا أو تفعيله أو إزالته.
للوصول إلى الحقول الخاصة بنوع إعلان معيّن، مثل عناوين "إعلان متجاوب على شبكة البحث"، استخدِم طريقة asType() لإنشاء AdViewSpace.
يوفّر ذلك إمكانية الوصول إلى إصدار موسّع من
Ad يعرض طرقًا خاصة بأنواع معيّنة.
تعرض المقتطفة البرمجية التالية عناوين كل إعلان متجاوب على شبكة البحث:
const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
let ad = iterator.next();
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
}
لاحظ أنّ الشرط Type = RESPONSIVE_SEARCH_AD يضمن أنّ كل إعلان من أداة التكرار هو إعلان متجاوب على شبكة البحث. سيؤدي محاولة عرض إعلان بنوع غير صحيح إلى حدوث خطأ يوقف تنفيذ البرنامج النصي، لذا من المهم عرض الحقول الخاصة بنوع الإعلان فقط عندما يكون نوع الإعلان معروفًا.
يوضّح المقتطف التالي كيفية تحديد ما إذا كان الإعلان من النوع الصحيح باستخدام الطريقة Ad.isType():
if (ad.isType().responsiveSearchAd()) {
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
let descriptions = responsiveSearchAd.getDescriptions();
}
على الرغم من أنّه لا يمكنك فلترة الإعلانات حسب نص العنوان باستخدام أدوات الاختيار العادية، يمكنك فلترتها في JavaScript بعد استردادها:
const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
let ad = iterator.next();
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
// Filter for ads containing a specific headline.
if (headlines.some(h => h.getText().includes("Special Offer"))) {
console.log(`Found ad with ID ${ad.getId()}`);
}
}
إعداد التقارير
يمكن استخدام طريقة العرض ad_group_ad للاستعلام عن حقول الإعلانات بالإضافة إلى الإحصاءات العادية. على سبيل المثال، يمكنك الفلترة حسب نوع الإعلان باستخدام ad_group_ad.ad.type.
يوضّح المقتطف التالي كيفية استرداد إحصاءات جميع "الإعلانات المتجاوبة على شبكة البحث":
const results = AdsApp.search(
"SELECT ad_group_ad.ad_group.id, " +
"ad_group_ad.ad.id, " +
"metrics.clicks, " +
"metrics.impressions, " +
"metrics.cost " +
"FROM ad_group_ad " +
"WHERE ad_group_ad.ad.type = 'RESPONSIVE_SEARCH_AD' " +
"AND segments.date DURING LAST_7_DAYS");
while (results.hasNext()) {
let row = results.next();
let adId = row.adGroupAd.ad.id;
let clicks = row.metrics.clicks;
...
}
الفلترة حسب محتوى مواد العرض
لفلترة "الإعلانات المتجاوبة على شبكة البحث" حسب محتوى عناوينها أو أوصافها على نطاق واسع، استخدِم أداة ad_group_ad_asset_view. تعامِل طريقة العرض هذه مع كل عنوان ووصف كصف منفصل، ما يتيح لك الفلترة حسب نص مادة العرض.
تعرض المقتطفة التالية إحصاءات عن جميع "الإعلانات المتجاوبة على شبكة البحث" التي تتضمّن عنوانًا معيّنًا:
const results = AdsApp.search(
"SELECT ad_group_ad.ad.id, " +
"asset.text_asset.text, " +
"metrics.clicks, " +
"metrics.impressions " +
"FROM ad_group_ad_asset_view " +
"WHERE asset.text_asset.text LIKE '%Special Offer%' " +
"AND ad_group_ad_asset_view.field_type = 'HEADLINE'");
while (results.hasNext()) {
let row = results.next();
let adId = row.adGroupAd.ad.id;
let text = row.asset.textAsset.text;
let clicks = row.metrics.clicks;
console.log(`Ad ID ${adId} with headline "${text}" had ${clicks} clicks.`);
}
راجِع دليل التقارير للحصول على مزيد من المعلومات حول إعداد التقارير في البرامج النصية.