Sıklığa göre reklam öğesi seçme

Bir URL seçmek ve bunu sınırlanmış bir çerçevede oluşturmak için bir Paylaşılan Depolama iş akışı çalıştırın.

Shared Storage API; genel amaçlı, siteler arası depolamaya yönelik bir Özel Korumalı Alan teklifidir. Birçok olası kullanım alanını destekler. Buna örnek olarak, Chrome Beta 104.0.5086.0 ve sonraki sürümlerde test edilebilen sıklık denetimi verilebilir.

Depolanan verilere göre, sağlanan listeden bir URL seçmek için bir iş akışı komut dosyası çalıştırın ve ardından bu URL'yi sınırları belirlenmiş bir çerçevede oluşturun. Bu özellik, sıklık sınırına ulaşıldığında yeni reklamları veya diğer içerikleri seçmek için kullanılabilir.

Reklam öğesi seçimini sıklığa göre test edin

Paylaşılan Depolama ve Özel Çerçeveler ile reklam öğesi seçimini sıklığa göre test etmek için Chrome 104.0.5086.0 veya sonraki bir sürümü kullandığınızdan emin olun. chrome://settings/adPrivacy altındaki tüm reklam gizliliği API'lerini etkinleştirin.

Paylaşılan Depolama Alanı'nı, komut satırındaki --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames işaretini kullanarak da etkinleştirebilirsiniz.

Kod örnekleriyle denemeler yapma

Opak bir URL seçip oluşturmak için paylaşılan depolama verilerini okuyacak bir işlet modülü kaydedin. Çalışma alanı sınıfı en fazla sekiz URL'den oluşan bir liste alır ve daha sonra, seçilen URL'nin dizinini döndürür.

İstemci sharedStorage.selectURL() yöntemini çağırdığında, iş akışı yürütülür ve çitli çerçeveye dönüştürülecek opak bir URL döndürür.

Bir kullanıcının reklamı veya içeriği daha önce görüntüleme sıklığına bağlı olarak oluşturmak için farklı bir reklam veya içerik seçmek istediğinizi varsayalım. Bir kullanıcının bir içeriği kaç kez gördüğünü sayabilir ve bu değeri paylaşılan depolama alanında depolayabilirsiniz. Paylaşılan depolama alanındaki değer depolandıktan sonra farklı kaynaklarda sizin için kullanılabilir hale gelir.

Daha sonra, paylaşılan depolama iş akışı paylaşılan depolama alanındaki değerleri okur ve sayacı her ek görünümde artırır. Sayı, önceden tanımlanmış sınıra ulaşmadıysa oluşturmak istediğiniz içerik döndürülür (dizin 1). Hiç değilse varsayılan URL döndürülür (dizin 0).

Bu örnekte:

  • creative-selection-by-frequencyjs, içerik üreticisinin veya reklamverenin iframe'i aracılığıyla yüklenir ve paylaşılan depolama iş akışını yüklemekten ve döndürülen opak kaynağı sınırlı bir çerçeveye oluşturmaktan sorumludur.
  • creative-selection-by-frequency-worklet.js, bir içerik veya reklam öğesi için hangi URL'nin döndürüldüğünü belirlemek üzere sıklık sayısını okuyan paylaşılan depolama iş akışıdır.

creative-selection-by-frequency.js

// The first URL is the default content or ad to be rendered when the frequency limits reached.
const CONTENT_URLS = [
  { url: `https://${contentProducerUrl}/default-content.html` },
  { url: `https://${contentProducerUrl}/example-content.html` },
];

async function injectAd() {
  // Load the worklet module.
  await window.sharedStorage.worklet.addModule('creative-selection-by-frequency-worklet.js');

  // Set the initial frequency count
  window.sharedStorage.set('frequency-count', 0, {
    ignoreIfPresent: true,
  });

  // Run the URL selection operation to choose an ad based on the frequency count in shared storage.
  const fencedFrameConfig = await window.sharedStorage.selectURL('creative-selection-by-frequency', CONTENT_URLS, {
    resolveToConfig: true
  });

  // Render the opaque URL into a fenced frame
  document.getElementById('content-slot').config = fencedFrameConfig;
}

injectAd();

creative-selection-by-frequency-worklet.js

const FREQUENCY_LIMIT = 5;

class CreativeSelectionByFrequencyOperation {
  async run(urls, data) {
    // Read the current frequency limit in shared storage
    const count = parseInt(await this.sharedStorage.get('frequency-count'));

    // Check if the frequency limit has been reached.
    if (count === FREQUENCY_LIMIT) {
      console.log('Frequency limit has been reached, and the default content will be rendered.');
      return 0;
    }

    // Set the new frequency count in shared storage
    await this.sharedStorage.set('frequency-count', count + 1);
    return 1;
  }
}

// Register the operation as 'creative-selection-by-frequency'.
register('creative-selection-by-frequency', CreativeSelectionByFrequencyOperation);

Kullanım alanları

Bunlar, Paylaşılan Depolama Alanı'nın olası kullanım alanlarından yalnızca bazılarıdır. Geri bildirim aldık ve yeni kullanım alanları keşfettikçe örnekler eklemeye devam edeceğiz.

İçerik seçimi

Paylaşılan Depolama Alanı'nda toplanan bilgilere göre çitli çerçeveler içinde farklı web sitelerinde farklı içerikler seçin ve görüntüleyin. Bu kullanım alanları için çıkış kapısı URL seçimidir.

  • Reklam öğesi rotasyonu: Kullanıcıların farklı sitelerde hangi reklam öğesini gördüğünü belirlemek için reklam öğesi kimliği, görüntüleme sayıları ve kullanıcı etkileşimi gibi verileri depolayın.
  • A/B testi: Bir deneme grubuna kullanıcı atayabilir, ardından bu grubu siteler arasında erişmek üzere Paylaşılan Depolama'da saklayabilirsiniz.
  • Özel kullanıcı deneyimleri: Kullanıcının kayıt durumuna veya diğer kullanıcı durumlarına göre özel içerikler ve harekete geçirici mesajlar paylaşın

Özet rapor oluşturma

Paylaşılan Depolama ile bilgi toplayarak gürültülü, toplu bir özet rapor oluşturdu. Bu kullanım alanları için çıkış kapısı, Private Aggregation API'dir.

  • Tekil erişim ölçümü: Birçok içerik üreticisi ve reklamveren, içeriklerini kaç benzersiz kullanıcının gördüğünü bilmek ister. Paylaşılan Depolama Alanı'nı kullanarak bir kullanıcının reklamınızı, yerleşik videonuzu veya yayınınızı ilk kez gördüğünü kaydedebilir ve aynı kullanıcının farklı sitelerde yinelenen şekilde sayılmasını önleyebilirsiniz. Ardından, erişiminiz için özet raporu oluşturmak amacıyla Private Aggregation API'yi kullanabilirsiniz.
  • Demografi ölçümü: İçerik üreticileri genellikle kitlelerinin demografisini anlamak ister. Paylaşılan Depolama Alanı'nı kullanarak kullanıcıların demografik verilerini, birinci taraf siteniz gibi sahip olduğunuz bir bağlamda kaydedebilir ve yerleşik içerik gibi diğer pek çok sitede bu veriler hakkında rapor oluşturmak için toplu raporlardan yararlanabilirsiniz.
  • K+ sıklık ölçümü: Bazen "etkili sıklık" olarak da bahsedildiğinde, kullanıcının belirli içeriği tanıması veya hatırlaması için genellikle bir minimum görüntüleme sayısı olur (genellikle reklam görüntülemeleri bağlamında). Bir içeriği en az K sayıda gören benzersiz kullanıcılar hakkında raporlar oluşturmak için Paylaşılan Depolama'yı kullanabilirsiniz.

Etkileşimde bulunun ve geri bildirim paylaşın

Paylaşılan Depolama alanı teklifi şu anda etkin bir şekilde tartışılmaktadır ve gelecekte değiştirilebilir. Bu API'yi deneyip geri bildirimde bulunursanız memnuniyet duyarız.