المشاكل الشائعة

هذه مجموعة من المشاكل الأكثر شيوعًا المثارة في منتدى نصوص "إعلانات Google" البرمجية.

أخطاء JavaScript الشائعة

فشل النص البرمجي مع ظهور الرسالة "لا يمكن العثور على الدالة: FUNCTION_NAME"

ويكون هذا عادةً ناتجًا عن خطأ إملائي في اسم الدالة في النص البرمجي.

  1. تحقق من أن اسم الدالة مكتوب بشكل صحيح وأنه يحتوي على الحالة الإملائية الصحيحة؛ على سبيل المثال، سيؤدي استخدام AdsApp.keywordz() إلى هذا الخطأ، لأنّ keywordz ليست دالة صالحة في فئة AdsApp. سيفشل AdsApp.Keywords() أيضًا بسبب وجود حالة إملائية غير صحيحة للدالة keywords().

  2. تحقق من وجود الدالة، على سبيل المثال لن ينجح AdsApp.keywords().next() لأنّ AdsApp.keywords() تعرض KeywordSelector بينما next() هي طريقة لكائن KeywordIterator.. سيكون الرمز الصحيح AdsApp.keywords().get().next().

يتم تشغيل النص البرمجي الخاص بي، ولكنه لا يفعل أي شيء

السبب الأكثر شيوعًا لهذه المشكلة هو أنّ لديك دالة تنفِّذ عملية معينة، ولكنك لا تستدعيها من خلال طريقة main(). ويحدث هذا عادةً عند نسخ مقتطفات الرمز ولصقها من مستنداتنا.

أسلوب الترميز مقتطف الرمز
الإصدار 1 (لا يعمل)
function main() {
  // Call to getAllCampaigns is missing, so this script does nothing.
}

function getAllCampaigns() {
  // AdsApp.campaigns() will return all campaigns that are not
  // removed by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    console.log(campaign.getName());
  }
}
الإصدار 2 (لا يعمل)
function main() {
  // Call to getAllCampaigns is missing, so this script does nothing.

  function getAllCampaigns() {
    // AdsApp.campaigns() will return all campaigns that are not
    // removed by default.
    let campaignIterator = AdsApp.campaigns().get();
    console.log('Total campaigns found : ' +
        campaignIterator.totalNumEntities());
    while (campaignIterator.hasNext()) {
      let campaign = campaignIterator.next();
      console.log(campaign.getName());
    }
  }
}
الإصدار 3 (يعمل)
function main() {
  getAllCampaigns();
}

function getAllCampaigns() {
  // AdsApp.campaigns() will return all campaigns that are not removed
  // by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    Logger.log(campaign.getName());
  }
}

أحصل على خطأ "لا يمكن العثور على الدالة getFinalUrl" عند ترقية نصوصي البرمجية

قد يحدث هذا الخطأ عند تغيير النص البرمجي للعمل مع عناوين URL التي تمت ترقيتها. ويحدث ذلك عند استبدال الاستدعاءات إلى ad.getDestinationUrl() باستخدام ad.getFinalUrl(). getFinalUrl() هي جزء من فئة AdUrls، لذا يجب تغيير الرمز إلى ad.urls().getFinalUrl():

function main() {
  // Incorrect snippet. getFinalUrl is not a member of the Ad class.
  let ad = AdsApp.ads().get().next();
  let url = ad.getFinalUrl();

  // Correct snippet.
  let ad = AdsApp.ads().get().next();
  let url = ad.urls().getFinalUrl();
}

ما مِن إحصاءات عن X

إنّ عدم توفّر البيانات لعنصر أو نطاق زمني معيّن هو خطأ شائع قد تواجهه عند إعداد التقارير أو إجراء طلبات الحصول على الإحصاءات. هناك العديد من الأشياء التي يمكنك تجربتها:

  1. تحقّق من النطاق الزمني الذي تريد استرداد الإحصاءات أو تشغيل التقارير فيه.

  2. في حال استرداد الإحصاءات على مستوى الحساب لنص "مدير إعلانات Google" الذي يدير حسابات بعملات مختلفة، يمكنك استرداد التكلفة بعملة الحساب الإداري.

  3. قد لا تتوفّر في "إعلانات Google" البيانات التي تبحث عنها حتى الآن. راجع دليل حداثة البيانات للحصول على التفاصيل.

طلبات الميزات

هل تتوفّر الميزة س؟

يمكنك مراجعة المستندات المرجعية.

متى ستتوفّر الميزة X؟

نحن نحاول العمل على الميزات الأكثر طلبًا أولاً. إذا كانت هناك ميزة ترغب في رؤيتها، فاتبع الخطوات التالية:

  1. أولاً، تحقّق من أنّ الميزة غير متوافقة مع نصوص "إعلانات Google" البرمجية من خلال مراجعة المستندات المرجعية.

  2. وإذا لم يكن متاحًا، ابحث في منتدى نصوص "إعلانات Google" البرمجية لمعرفة ما إذا كان قد طرح أحدهم أسئلة من قبل أم لا. إذا كنت تريد مشاركة تفاصيل إضافية، مثل حالة استخدام، يمكنك التصويت المؤيّد على سلسلة المحادثات هذه أو إضافة تعليق إذا أردت مشاركة تفاصيل إضافية.

  3. إذا لم يتم طلب الميزة بعد، يمكنك تقديم طلب ميزة من خلال فتح سلسلة محادثات جديدة في منتدى نصوص "إعلانات Google" البرمجية. تأكد من تقديم حالة استخدام ستحلها هذه الميزة. أدرِج رابطًا إلى دليل مركز المساعدة أو مشاركة أو دليل في مدونة AdWords API يصف هذه الميزة، إذا أمكن. سيساعد هذا المطورين الآخرين أثناء التصويت المؤيّد على طلب ميزة. نعطي الأولوية لطلبات الميزات استنادًا إلى مدى رواجها.

  4. ضَع علامة "طلب ميزة" على المشاركة لنسهّل علينا (وعلى المستخدمين) التحقق من طلبات الميزات بسرعة.

كيف يمكنني استخدام الميزة س؟

يمكنك الاطّلاع على مقتطفات الرمز والحلول التي نقدّمها للحصول على أمثلة حول طريقة استخدام ميزة معيّنة. إذا لم تجد مقتطف رمز مناسبًا، فلا تتردد في تقديم طلب في المنتدى.