اختيار تصميم إعلان حسب معدّل التكرار

يمكنك تشغيل أداة عمل مساحة التخزين المشتركة لاختيار عنوان URL وعرضه في إطار محاط بحدود.

إنّ Shared Storage API هي اقتراح يوفّر "مبادرة حماية الخصوصية" لتخزين البيانات على عدة مواقع إلكترونية لأغراض عامة، ويتوافق مع العديد من حالات الاستخدام المحتملة. أحد الأمثلة على ذلك هو التحكّم في معدّل التكرار، وهو متاح للاختبار في الإصدار التجريبي 104.0.5086.0 من Chrome والإصدارات الأحدث.

شغِّل نصًا برمجيًا لـ Worklet لتحديد عنوان URL من قائمة متوفرة، استنادًا إلى البيانات المخزنة، ثم عرض عنوان URL هذا في إطار محاط بسياج. ويمكن استخدام هذه الميزة لاختيار إعلانات جديدة أو محتوى آخر عند بلوغ الحدّ الأقصى لمعدّل التكرار

اختبار اختيار تصميم الإعلان حسب فترة التكرار

لاختبار اختيار المواد الإبداعية حسب معدّل التكرار من خلال "مساحة التخزين المشتركة" و"الإطارات المحاطة بحدود"، تأكَّد من أنّك تستخدم الإصدار 104.0.5086.0 أو إصدار أحدث من Chrome. تفعيل جميع واجهات برمجة تطبيقات الخصوصية في عرض الإعلانات ضمن "chrome://settings/adPrivacy"

يمكنك أيضًا تفعيل "مساحة التخزين المشتركة" باستخدام العلامة --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames في سطر الأوامر.

اختبار نماذج الرموز

لتحديد عنوان URL مبهم وإنشائه، سجِّل وحدة ملف العمل لقراءة بيانات التخزين المشتركة. تتلقى فئة Worklet قائمة تضم ما يصل إلى ثمانية عناوين URL ثم تعرض فهرس عنوان URL المختار.

عندما يستدعي العميل sharedStorage.selectURL()، تنفّذ الوظيفة المصغّرة وتعرض عنوان URL مبهمًا لعرضه في إطار محاط بحدود.

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

بعد ذلك، تقرأ الوظيفة المصغّرة لمساحة التخزين المشتركة القيم في مساحة التخزين المشتركة، وتزيد من العدّاد مع كل طريقة عرض إضافية. إذا لم يصل العدد إلى الحد المحدد مسبقًا، سيتم عرض المحتوى الذي تريد عرضه (الفهرس 1). وإذا لم يصل، سيتم عرض عنوان URL التلقائي (الفهرس 0).

في هذا المثال:

  • يتم تحميل creative-selection-by-frequencyjs من خلال إطار iframe الخاص بصانع المحتوى أو المعلن، ويكون مسؤولاً عن تحميل أداة التخزين المشتركة وعرض المصدر غير الغامق الذي تم عرضه في إطار محاط بحدود.
  • creative-selection-by-frequency-worklet.js هي الوظيفة المصغّرة لمساحة التخزين المشتركة التي تقرأ عدد مرات التكرار لتحديد عنوان URL الذي يتم عرضه لمحتوى أو لتصميم إعلان.

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);

حالات الاستخدام

هذه ليست سوى بعض حالات الاستخدام المحتملة لمساحة التخزين المشتركة. وسنواصل إضافة الأمثلة عندما نتلقّى الملاحظات ونكتشف حالات استخدام جديدة.

اختيار المحتوى

يمكنك اختيار محتوى مختلف وعرضه على مواقع إلكترونية مختلفة في إطارات محدّّدة استنادًا إلى المعلومات التي يتم جمعها في "مساحة التخزين المشتركة". وتتمثل بوابة الإخراج لحالات الاستخدام هذه في اختيار عنوان URL.

  • عرض تصميم الإعلان بالتناوب: يمكنك تخزين البيانات، مثل رقم تعريف تصميم الإعلان وعدد المشاهدات وتفاعل المستخدمين، لتحديد تصاميم الإعلانات التي ستظهر لمستخدِمي المواد الإبداعية في المواقع الإلكترونية المختلفة.
  • اختبار A/B: يمكنك تخصيص مستخدم لمجموعة تجارب، ثم تخزين تلك المجموعة في مساحة تخزين مشتركة للوصول إليها من مواقع إلكترونية مختلفة.
  • تجارب مخصّصة للمستخدِم: يمكنك مشاركة محتوى مخصّص وعبارات الحث على اتّخاذ إجراء استنادًا إلى حالة تسجيل المستخدِم أو حالاته الأخرى.

إنشاء تقارير تلخيصية

جمع المعلومات باستخدام "مساحة التخزين المشتركة" وإنشاء تقرير ملخّص مجمّع صاخب بوابة الإخراج لحالات الاستخدام هذه هي Private Aggregation API.

  • قياس مدى الوصول الفريد: يريد العديد من منتجي المحتوى والمعلنين معرفة عدد المستخدمين الفرديين الذين رأوا المحتوى الخاص بهم. استخدِم "مساحة التخزين المشتركة" لتسجيل المرة الأولى التي يشاهد فيها المستخدم إعلانك أو فيديو مضمّنًا أو جهة نشر، وتمنع الحساب المتكرر لهذا المستخدم نفسه على مواقع إلكترونية مختلفة. يمكنك بعد ذلك استخدام واجهة برمجة التطبيقات Private Aggregation API لإعداد تقرير ملخّص عن مدى وصولك إلى الجمهور.
  • قياس الخصائص الديمغرافية: غالبًا ما يريد منتجو المحتوى فهم الخصائص الديمغرافية للجمهور. يمكنك استخدام "مساحة التخزين المشتركة" لتسجيل البيانات الديمغرافية للمستخدمين في سياق يتوفّر لديك ذلك، مثل الموقع الإلكتروني للطرف الأول، واستخدام التقارير المجمّعة لإعداد تقارير عنها على العديد من المواقع الإلكترونية الأخرى، مثل المحتوى المضمَّن.
  • قياس معدل التكرار بـ K+: في بعض الأحيان، يكون هناك حد أدنى لعدد مرات المشاهدة حتى يتمكن المستخدم من التعرف على محتوى معين أو تذكُّره (غالبًا في سياق مشاهدات الإعلان). يمكنك استخدام مساحة التخزين المشتركة لإنشاء تقارير عن المستخدمين الفريدين الذين شاهدوا محتوى ما لا يقل عن ألف مرة.

التفاعل مع الملاحظات ومشاركتها

يخضع اقتراح مساحة التخزين المشتركة للمناقشة النشطة ويخضع للتغيير في المستقبل. إذا جربت واجهة برمجة التطبيقات هذه ولديك تعليقات، يسعدنا سماعها.