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

هذه مجموعة من المشاكل الأكثر شيوعًا التي تم طرحها في منتدى نصوص "إعلانات 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() هي جزء من فئة AdUrl، لذا عليك تغيير الرمز إلى 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. في حال استرداد الإحصاءات على مستوى الحساب للنص البرمجي "مدير الإعلانات" الذي يدير حسابات عملات مختلفة، ستسترد التكلفة بعملة الحساب الإداري.

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

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

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

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

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

نحاول أولاً معالجة الميزات الأكثر طلبًا. إذا كانت هناك ميزة تريد رؤيتها، اتّبِع الخطوات التالية:

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

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

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

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

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

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