Bu doküman, Google Ads komut dosyaları forumunda en sık karşılaşılan sorunların bir derlemesidir.
Sık karşılaşılan JavaScript hataları
Komut dosyası, "İşlev bulunamadı: FUNCTION_NAME" hatasıyla başarısız oluyor
Bu hata genellikle komut dosyasında işlev adının yanlış yazılmasından kaynaklanır.
İşlev adının doğru yazıldığından ve büyük/küçük harf kullanımının doğru olduğundan emin olun.
keywordz
, AdsApp sınıfında geçerli bir işlev olmadığındanAdsApp.keywordz()
bu hatayla sonuçlanır.AdsApp.Keywords()
,keywords()
işlevinin yanlış yazım nedeniyle de başarısız olur.İşlevin mevcut olup olmadığını kontrol edin. Örneğin:
next()
birKeywordIterator
nesnesi için bir yöntem olduğundanAdsApp.keywords().next()
başarısız olur çünküAdsApp.keywords()
birKeywordSelector
döndürür. Doğru kodAdsApp.keywords().get().next()
olmalıdır.
Komut dosyam çalışıyor ancak hiçbir şey yapmıyor
Bu sorunun en yaygın nedeni, bir işlem gerçekleştiren bir işleviniz olmasına rağmen bu işlevi main()
yönteminden çağırmamanızdır. Bu durum genellikle dokümanlarımızdaki kod snippet'lerini kopyalayıp yapıştırdığınızda yaşanır.
Kodlama yaklaşımı | Kod snippet'i |
---|---|
1. sürüm (çalışmaz) |
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()); } } |
Version 2 (doesn't work) |
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()); } } } |
Version 3 (works) |
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()); } } |
Komut dosyalarımı yükseltirken "getFinalUrl işlevi bulunamadı" hatası alıyorum
Komut dosyanızı yükseltilmiş URL'lerle çalışacak şekilde değiştirirken bu hatayla karşılaşabilirsiniz. Bu durum, ad.getDestinationUrl()
çağrılarını ad.getFinalUrl()
ile değiştirdiğinizde ortaya çıkar.
getFinalUrl()
, AdUrls sınıfının bir parçası olduğundan kodunuzu ad.urls().getFinalUrl()
olarak değiştirmeniz gerekir:
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 için istatistik alamıyorum
Belirli bir öğe veya tarih aralığı için verilerin bulunmaması, rapor çalıştırırken ya da istatistik çağrıları yaparken karşılaşabileceğiniz yaygın bir hatadır. Deneyebileceğiniz birkaç şey vardır:
İstatistikleri aldığınız veya raporları çalıştırdığınız tarih aralığını kontrol edin.
Farklı para birimlerine sahip hesapları yöneten bir Ads Manager komut dosyası için hesap düzeyinde istatistikler alırsanız maliyeti yönetici hesabının para biriminde alırsınız.
Google Ads'de henüz aradığınız veriler olmayabilir. Ayrıntılar için veritazeliği kılavuzumuza bakın.
X özelliğini nasıl kullanırım?
Belirli bir özelliğin nasıl kullanılacağına dair örnekler için kod snippet'lerimize ve çözümlerimize bakın. Uygun bir kod snippet'i bulamazsanız forumda istek gönderebilirsiniz.
Hâlâ desteğe mi ihtiyacınız var?
Yardım alabileceğimiz bir konuda yardıma ihtiyacınız varsa Yardım Alın sayfasını ziyaret edin.