Maksimum Performans'ın isteğe bağlı bileşenleri

Dönüşüm hedefleri

Maksimum Performans kampanyası oluşturduğunuzda, hesaptaki CustomerConversionGoal ile eşleşen bir dizi dönüşüm hedefi otomatik olarak oluşturulur. Bu ayarları, Maksimum Performans kampanyalarınızın her biri için özel olarak özelleştirebilirsiniz.

Bunu yapmak için öncelikle Maksimum Performans kampanyalarınızın kampanya kimliğini ve tüm müşteri dönüşümü hedeflerinin listesini getirmeniz gerekir. Birden fazla Maksimum Performans kampanyasında döngü oluşturacak şekilde kodunuzu ayarlayabilmenize rağmen, burada bir kampanyanın hedeflerini değiştirme örneği verilmiştir.

// Query for a campaign by name. Update this logic to pull the campaigns you'd
// like to edit
const campaignName = "My PMax campaign";
let campaignId = "";

const search = AdsApp.search(`SELECT campaign.id FROM campaign WHERE campaign.name = "${campaignName}"`);
if (search.hasNext()) {
  campaignId = search.next().campaign.id;
  console.log(`Updating conversion goals for ${campaignName}: ${campaignId}`);
}
else
{
  console.log(`No campaign named "${campaignName}" found`);
  // Perform further error handling here
}

// Query for a list of customer conversion goals
const searchResults = AdsApp.search(
  `SELECT
     customer_conversion_goal.category,
     customer_conversion_goal.origin
   FROM customer_conversion_goal`
);

Ardından, aldığınız tüm dönüşüm hedeflerini yineleyebilirsiniz ve her hedef için hedeflemeyi özelleştirmek üzere mevcut Maksimum Performans kampanyası için bir güncelleme işlemi oluşturabilirsiniz. Bu bölümün ilerleyen kısımlarında gösterilen kod örneğinde tüm hedefler teklif verilebilir olarak ayarlanır. Ancak mantığın bu bölümünü, kampanyanızdan elde etmek istediğiniz sonuçlara uyacak şekilde özelleştirmeniz gerekir.

Dönüşüm hedeflerini, kampanya oluşturma sürecinin geri kalanından ayrı bir işlemde ayarlamanızı öneririz. CampaignConversionGoalOperation için isteğin partialFailure değerinin false olarak ayarlanması gerekir. Bu kodu, kampanyayı ilk oluşturduğunuz işlemde çalıştırmak istiyorsanız tüm işlem grubunda kısmi hata özelliğini devre dışı bırakmanız gerekir. Bu örnek kod, bu işlemin ayrı bir işlemde nasıl yapılacağını gösterir.

operations = [];
while (searchResults.hasNext()) {
  const row = searchResults.next();
  const conversionGoal = row.customerConversionGoal;

  operations.push({
    "campaignConversionGoalOperation": {
      "update": {
        "resourceName": `customers/${customerId}/campaignConversionGoals/${campaignId}~${conversionGoal.category}~${conversionGoal.origin}`,
        // Insert your logic here to determine whether you want this particular
        // campaign conversion goal to be biddable or not.
        // This code will just default everything to being biddable, but that
        // is not necessarily best for your use case.
        "biddable": true
      },
      "updateMask": "biddable"
    }
  });
}

AdsApp.mutateAll(operations, {partialFailure: false});

Kampanya hedeflemesi

Maksimum Performans'taki kampanya hedefleme için izin verilen ölçüt türlerinin tam listesini görmek üzere API kılavuzunu inceleyin.

Maksimum Performans kampanyası oluşturmak için ek ölçüt gerekmez ancak bu ölçütler, kullanım alanınıza göre hedeflemeyi kısıtlamanıza yardımcı olabilir. Aşağıdaki kod örneğinde, coğrafi konum hedefinin nasıl ayarlanacağı gösterilmektedir. Diğer ölçüt türlerinin biçimi için CampaignCriterion dokümanına başvurabilirsiniz.

Bu ölçütleri, kampanyanın kendisiyle birlikte mutateAll için aynı çağrının parçası olarak oluşturabilirsiniz. Bu kod örneğinde, kodunuzu bu şekilde yapılandırdığınız varsayılmaktadır.

operations.push({
  "campaignCriterionOperation": {
    "create": {
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "negative": false,
      "location": {
        // 1023191 represents New York City
        "geoTargetConstant": "geoTargetConstants/1023191"
      }
    }
  }
});

Öğe grubu sinyalleri

Başlamadan önce API dokümanlarında öğe grubu sinyalleri hakkında bilgi edinin. Bunlar, bir öğe grubunu mevcut bir AudienceInfo veya SearchThemeInfo ölçütüne bağlayarak oluşturulur. Bunun yerine bir kitle kullanmak istiyorsanız searchTheme alanı yerine kitlenin kaynak adıyla audience alanını belirtin.

operations.push({
  "assetGroupSignalOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      "searchTheme": {
        "text": "mars cruise"
      }
    }
  }
});