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

هذه مجموعة من المشاكل الشائعة التي يطرحها مطوّرو نصوص "إعلانات Google" البرمجية.

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

في ما يلي بعض أخطاء 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 getCampaigns is missing, so this script does nothing.
}

function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display 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 getCampaigns is missing, so this script does nothing.

  function getCampaigns() {
    // AdsApp.campaigns() will return all Search and Display 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() {
  getCampaigns();
}

function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display 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؟

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

هل ما زلت بحاجة إلى المساعدة؟

إذا كنت بحاجة إلى مساعدة في مجال يمكننا تقديم المساعدة فيه، يُرجى الانتقال إلى صفحة الحصول على المساعدة.