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

هذه مجموعة من المشاكل الأكثر شيوعًا التي تم طرحها في منتدى النصوص البرمجية على "إعلانات 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 متاحة؟

يُرجى الاطّلاع على المستندات المرجعية.

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

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

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

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

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

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

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

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