يوضّح هذا الدليل مفاهيم وأساليب تسمية التقارير في واجهة مستخدم "إعلانات Google"، ويقارنها بالتقارير التي يمكنك إنشاؤها باستخدام "لغة طلبات البحث في إعلانات Google" (GAQL) وGoogle Ads API.
مصطلحات شائعة في واجهة المستخدم
يلخّص الجدول التالي بعض المصطلحات الشائعة الاستخدام في واجهة المستخدم وعمليات الربط الخاصة بها مع لغة طلب البحث في "إعلانات Google" (GAQL).
واجهة المستخدِم | GAQL |
---|---|
الأعمدة | أيّ مصدر أو حقل شريحة أو مقياس في عبارة SELECT ضمن طلب بحث GAQL |
النطاق الزمني | يتم ربط النطاقات الزمنية بـ عبارة WHERE يتم فيها إجراء فلترة باستخدام segments.date . |
الفلاتر | شرط واحد أو أكثر في عبارة WHERE |
حقول الشرائح | طبِّق التصنيف إلى شرائح من خلال تضمين حقول الشرائح في طلب بحث GAQL. |
تقسيم المحتوى إلى صفحات | تؤدي عملية التقسيم إلى صفحات إلى تقسيم مجموعة نتائج طلب البحث إلى صفحات متعددة. |
الأعمدة
الأعمدة في واجهة المستخدِم تعادل حقول الموارد وحقول الشرائح والمقاييس في GAQL.
الفلترة
يمكنك فلترة البيانات وتنظيمها في تقاريرك.
النطاقات الزمنية
تتضمّن واجهة مستخدم "إعلانات Google" جدولاً يعرض إحصاءات الحساب، وقائمة منسدلة للتحكّم في النطاق الزمني لهذه الإحصاءات.
يمكنك التحكّم في ذلك بالطريقة نفسها في GAQL من خلال الفلترة حسب
segments.date
في عبارة WHERE ضمن طلب بحث GAQL.
الفلاتر
تكون الفلاتر في واجهة المستخدم مكافئة لشرط واحد أو أكثر في عبارة WHERE الخاصة بلغة طلبات البحث في إعلانات Google.
التقسيم
للحصول على إحصاءات أكثر تفصيلاً، قسِّم البيانات حسب الشرائح. على سبيل المثال، لنفترض أنّك تريد الاطّلاع على عدد مرّات الظهور الخاص بـ "شبكة بحث Google" بشكل منفصل عن "شبكة Google الإعلانية". في هذه الحالة، قسِّم تقريرك حسب الشبكة. راجِع قسم التقسيم لمعرفة كيفية تضمين حقول الشرائح في عبارة SELECT.
تقسيم النتائج على عدّة صفحات
يمكنك التنقّل بين تقاريرك في واجهة المستخدم باستخدام عناصر التحكّم المتاحة في أسفل كل جدول بيانات، ما يتيح لك التبديل بين الصفحات واختيار عدد النتائج التي تريد عرضها من مجموعة محدّدة من الأحجام.
تتوفّر إمكانية تصفّح النتائج عند استرداد التقارير باستخدام
GoogleAdsService.Search
إلى
next_page_token
. لاسترداد مجموعة النتائج بالكامل بدون أي تقسيم على صفحات، استخدِم GoogleAdsService.SearchStream
.
ترتيب النتائج
في واجهة المستخدم، يمكنك ترتيب النتائج من خلال اختيار عمود.
في GAQL، يمكنك استخدام عبارة ORDER BY وعبارة LIMIT لترتيب نتيجة طلب البحث.
تنسيقات التنزيل
في واجهة المستخدم، يمكن تنزيل التقارير بتنسيقات مختلفة، مثل CSV أو TSV أو XML.
لا تتيح واجهة برمجة التطبيقات استخدام تنسيقات مختلفة في الناتج مباشرةً، لذا عليك إجراء بعض عمليات ما بعد المعالجة. اطّلِع على مثال الرمز البرمجي هذا الذي يوضّح كيفية تنفيذ تنسيق CSV في أحد العملاء.
جدولة التقارير وإرسالها عبر البريد الإلكتروني
يمكنك جدولة تقرير وإرساله عبر البريد الإلكتروني من واجهة المستخدم، ولكن لا تتوفّر هاتان الميزتان في واجهة برمجة التطبيقات.
التقارير مسبقة التحديد
يمكنك إنشاء قائمة بالتقارير المحدّدة مسبقًا في واجهة مستخدم "إعلانات Google".
في ما يلي قائمة بالتقارير الأساسية المعدّة مسبقًا واسم مورد GAQL المطابق لها.
التقارير الأساسية المحدّدة مسبقًا | اسم مورد GAQL (يجب تحديده في عبارة FROM) |
---|---|
Account | العميل |
الحملة تفاصيل الحملة |
الحملة |
المجموعة الإعلانية تفاصيل المجموعة الإعلانية |
ad_group |
الإعلان، رابط عنوان URL النهائي |
ad_group_ad |
الكلمة الرئيسية للبحث | keyword_view |
عبارات البحث | search_term_view |
المدفوعة والمجانية | paid_organic_search_term_view |
الصفحة المقصودة | landing_page_view |
الصفحة المقصودة الموسَّعة | expanded_landing_page_view |
على سبيل المثال، يمكنك استخدام طلب البحث التالي بلغة GAQL لإنشاء تقرير "الحساب" من الجدول السابق:
SELECT
customer.descriptive_name,
customer.id,
metrics.clicks,
metrics.impressions,
metrics.ctr,
metrics.average_cpc,
metrics.cost_micros,
metrics.absolute_top_impression_percentage,
metrics.top_impression_percentage,
metrics.average_cpm
FROM customer
WHERE segments.date DURING LAST_7_DAYS
الاختلافات الشائعة
عند مقارنة تقارير واجهة المستخدم بتقارير واجهة برمجة التطبيقات، يكون أحد الاختلافات الأكثر شيوعًا هو أنّ واجهة المستخدم تستبعد ضمنيًا الكيانات التي تمت إزالتها، بينما لا تفعل واجهة برمجة التطبيقات ذلك.
لتكرار عرض تلقائي لواجهة المستخدم، عليك إضافة فلتر، عادةً باستخدام حقل status
، لاستبعاد الصفوف التي تمت إزالتها. على سبيل المثال:
SELECT campaign.name
FROM campaign
WHERE campaign.status != "REMOVED"