בדף הזה נסביר איך להתחיל להשתמש מודעות AMPHTML עם הצעת מחיר בזמן אמת (RTB). מידע נוסף זמין במקורות המידע שבהמשך על מודעות AMPHTML וכלים שיעזרו לכם להתחיל בעבודה.
גישה ברמה גבוהה
בקשה להצעת מחיר ב-RTB
הבקשה להצעת מחיר ב-RTB מציינת אם הבקשה מגיעה מדף AMP והדרישות למודעות AMPHTML.
OpenRTB
דף AMP
message SiteExt { enum AmpPage { // This is not an AMP page. DIALECT_HTML = 0; // This is an Amp page. DIALECT_HTML_AMP = 1; } // Whether this is an AMP page or not. Omitted if unknown. optional AmpPage amp = 1; enum VisibilityState { VISIBILITY_STATE_UNKNOWN = 0; // The page is at least partially visible. For example, in the foreground // tab of a non-minimized window. VISIBILITY_STATE_VISIBLE = 1; // The page is not visible to users. For example, when the page is in a // background browser tab, or in a minimized window. VISIBILITY_STATE_HIDDEN = 2; } // The visibility state of the web page containing the ad slot. // See https://www.w3.org/TR/page-visibility/. // [AdX: BidRequest.page_visibility] optional VisibilityState page_visibility = 2 [default = VISIBILITY_STATE_UNKNOWN]; // Information about a browser window's user activation state. See // https://html.spec.whatwg.org/multipage/interaction.html#the-useractivation-interface. message UserActivation { // Indicates whether a user has completed an interaction since page load. optional bool wasact = 1; // Indicates whether a user is currently interacting with the page. optional bool isact = 2; } // User activation information from the browser for the current request, if // the request is for a web page. optional UserActivation uact = 5; // The set of possible web navigation types that predicate a page load. Each // of these types may have different performance characteristics. For example, // users going back and forth might experience a faster site than users // performing navigation for the first time or submitting forms. See // https://w3c.github.io/navigation-timing/#dom-performancenavigationtiming-type. enum NavigationType { NAVIGATION_TYPE_UNKNOWN = 0; // Navigation started by clicking a link, entering the URL in the browser's // address bar, form submission, or initializing through a script operation // other than reload and back_forward. NAVIGATION_TYPE_NAVIGATE = 1; // Navigation is through the browser's reload operation, location.reload(), // or a Refresh pragma directive like // <meta http-equiv="refresh" content="300">. NAVIGATION_TYPE_RELOAD = 2; // Navigation is through the browser's history traversal operation. NAVIGATION_TYPE_BACK_FORWARD = 3; // Navigation is initiated by a prerender hint (deprecated). See // https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel/prerender. NAVIGATION_TYPE_PRERENDER = 4; } // The type of browser navigation that led to the current page. Unset for // non-web ad requests. optional NavigationType ntype = 6; // Indicates that the request is using semi-transparent branding, // which means only a truncated version of the request URL will // be provided. This decision is made by the publisher, see // https://support.google.com/admanager/answer/4584891#urls for context. optional bool is_semi_transparent_request = 3; // The domain of the partner (of the site owner) with ownership // of some portion of ad inventory on the site. The partner's ads.txt file // will be hosted here. More detail at // http://iabtechlab.com/wp-content/uploads/2021/03/ctv-app-ads-explainer-guide.pdf optional string inventorypartnerdomain = 4; }
הדרישות לגבי מודעות AMPHTML
// Ad Exchange extensions for the Imp object. message ImpExt { ... // Possible requirement types for AMP ads. enum AmpAdRequirementType { // AMP ad requirements unknown. UNKNOWN_AMP_AD_REQUIREMENT_TYPE = 1; // AMP ads are not allowed. AMP_AD_NOT_ALLOWED = 2; // Either AMP ads or non-AMP ads are allowed; // AMP ads are not early rendered. AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED = 3; // Either AMP ads or non-AMP ads are allowed; // AMP ads are early rendered. AMP_AD_ALLOWED_AND_EARLY_RENDERED = 4; // AMP ads are required. // Ads that are non-AMP may be rejected by the publisher. AMP_AD_REQUIRED = 5; // Exchange-specific values above 500. } optional AmpAdRequirementType ampad = 8 [default = UNKNOWN_AMP_AD_REQUIREMENT_TYPE]; }
בידינג בזמן אמת (RTB) של Authorized Buyers
דף AMP
// Whether this is an AMP page or not. enum AmpPage { // AMP page status unknown. UNKNOWN_AMP_PAGE = 0;
הדרישות לגבי מודעות AMPHTML
// Possible requirement types for AMP ads. enum AmpAdRequirementType { // AMP ad requirements unknown. UNKNOWN_AMP_AD_REQUIREMENT_TYPE = 0;
תגובה להצעת מחיר ב-RTB
OpenRTB
ב- OpenRTB 3.0 והפרסום הנלווה המודל הנפוץ כולל כמה תוספות לתמיכה במודעות AMPHTML, המפרטים העדכניים ביותר של ה-IAB, כולל המפרטים הבאים.
הצעת מחיר | שדה | מאפיין | סוג | תיאור |
---|---|---|---|---|
בקשה | Site.amp |
amp |
מספר שלם | השדה Site.amp מציין אם הדף עובר עיבוד
ב-AMP, הושמט אם הוא לא ידוע:0 = הדף אינו AMP1 = הדף נוצר באמצעות AMP HTML |
בקשה | ampformat |
rend |
מספר שלם | מפרט פורמט AMP מציין את הדרישות והרינדור
ההתנהגות של מודעות AMPHTML:1 = הדרישות לגבי מודעות AMP לא ידועות2 = אסור להשתמש במודעות AMP3 = מותר להשתמש במודעות AMP או במודעות שאינן AMP. מודעות AMP לא עוברות רינדור מוקדם4 = מותר להשתמש במודעות AMP או במודעות שאינן AMP, ומודעות AMP עוברות עיבוד מוקדם.5 = יש צורך במודעות AMP. בעל התוכן הדיגיטלי עשוי לדחות מודעות שהן לא AMP500+ = ערכים ספציפיים ל-Exchange; צריך להעביר למגישי הצעות המחיר עדיפות |
תשובה | display |
curl |
מחרוזת | בתגובה להצעת המחיר, הוספנו את display.curl כדי לאפשר שליחה
נכסי קריאייטיב באמצעות כתובת URL, כולל תמיכה במודעות AMPHTML.זאת כתובת ה-URL שבה נמצאים תגי העיצוב של הקריאייטיב. רלוונטי לסוגים של נכסי קריאייטיב כמו: מודעות AMP, מודעות VAST, DAAST ומודעות מותאמות. בדרך כלל, רק מודעה אחת מסוג adm או curl חוקית במודעה נתונה. |
בידינג בזמן אמת (RTB) של Authorized Buyers
השדה BidResponse.Ad.amp_ad_url
בהצעת המחיר של Authorized Buyers
התגובות מקבלות כתובת URL שמפנה לתוכן של מודעת AMPHTML. אותו שדה קיים
כתוסף באובייקט Bid
ב-OpenRTB של Google.
יישום בפועל.
// The URL to fetch an AMPHTML ad. Only one of the following should be set: // html_snippet, video_url, amp_ad_url, native_ad. optional string amp_ad_url = 23;
אימות של AMPHTML חוקי
כדי שמודעות AMPHTML יוצגו בשלב מוקדם, ההחלפה נדרשת
לחתום עליהם, שמציין שהמודעה נכתבה בפורמט קריאייטיב <html
amp4ads>
amp4ads.
מודעות תקינות AMPHTML יוכלו להופיע בשלב מוקדם באמצעות דפי AMP. Google Ads שאינם מאומתים כ-AMPHTML חוקי, העיבוד יהיה באותה מהירות כמו שאינן מודעות AMPHTML.
יש להחזיר רק מודעות AMPHTML בamp_ad_url
.
בעתיד, אם בעל אתר דורש מודעות AMPHTML בלבד, מודעות שאינן חתומות בתור לא יתבצע עיבוד של AMPHTML.
ב-Authorized Buyers, מגישי הצעות המחיר עדיין יחויבו אם הם יחזירו מודעה שאינה מסוג AMPHTML למיקום מודעה הדרוש ל-AMPHTML.
אחזור בצד השרת
כדי שמודעות AMPHTML יוצגו בשלב מוקדם, התוכן של מודעת AMPHTML צריך לעבור רינדור בלי לדרוש מהלקוח צעדים נוספים. המטרה היא למנוע חוויות משתמש גרועות כתוצאה מזמן אחזור של הצגת המודעה וקריאות נוספות בצד הלקוח.
אחרי שמגיש הצעות מחיר זוכה במכרז, הבורסה תבצע
בקשה משרת לשרת לאחזר את התוכן של מודעת AMPHTML שנמצא בכתובת ה-URL
סופקו ב-amp_ad_url
. שרתי הקריאייטיב חייבים להגיב ולהחזיר
תוכן בטווח של 300 אלפיות השנייה.
מודעת ה-AMPHTML שהוחזרה משרת הקריאייטיב תוחדר אל
מיקום המודעה בדף, ולאחר מכן עיבוד שלה. לתשומת ליבכם: מודעת AMPHTML חוקית לא יכולה להכיל מודעות
iframes או תגי <amp-ad>
אחרים. לעיון ב-AMPHTML
מפרט המודעות.
תכונה בגרסת בטא בלבד: אם צריך אותה, אפשר לפנות לצוות ניהול החשבון
במהלך אחזור מודעת AMPHTML משרת-לשרת (מצוין ב:
amp_ad_url
), Authorized Buyers יכולים להעביר את כותרת ה-HTTP ואת כתובת ה-IP
מהדפדפן של המשתמש לשרת הקריאייטיב. כך אפשר להבטיח שהקריאייטיב
השרת מקבל מידע הדומה למידע שנשלח מצד הלקוח הרגיל
אחזור. במקרים מסוימים, ייתכן שכתובת ה-IP תיחתך ל-3 הבייטים הראשונים בלבד
(IPv4) או 6 הבייטים הראשונים (IPv6). אם יש צורך בכך, אפשר לפנות לצוות ניהול החשבון
. הנה דוגמה לכותרת HTTP:
כתובות URL למעקב אחר חשיפות ופקודות מאקרו של קליקים
קונים ב-RTB כוללים בדרך כלל כלים למעקב אחר חשיפות כשדה מובנה
תגובה להצעת מחיר (הכתובת היא Bid.burl
, "כתובת ה-URL של הודעת החיוב" ב-
OpenRTB 2.5).
ב-Authorized Buyers, הנכסים האלה יופעלו בצד הלקוח. amp-pixel מפעילה כתובות URL למעקב כאשר הקריאייטיב מוצג. amp-analytics יכול להתמודד עם תרחישים מתקדמים יותר של מעקב, מעבר לעיבוד.
מודעות AMPHTML צריכות להכיל מאקרו תקין של קליק בחשבון ה-AMPHTML. בדרך כלל זה ייראה בערך כך:
<a href="%%CLICK_URL_UNESC%%http%3A%2F%2my.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a> <a href=”https://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC%%”></a>
התאמות של קובצי Cookie
נכסי קריאייטיב כוללים לעיתים קרובות קובץ cookie
תואם פיקסלים בתוך קוד הקריאייטיב. מודעות AMPHTML יכולות להשתמש
amp-pixel
ו-amp-analytics
שונים לתרחיש לדוגמה הזה. אם לא ניתן להתאים את התרחיש לדוגמה שלכם באמצעות
amp-analytics
או amp-pixel
, פותחים א
בעיה ב-GitHub כדי לדון בה
אפשרויות חלופיות. אנחנו מקבלים בברכה תוספים חדשים שאפשר להשתמש בהם באופן נרחב
כמה חברות שונות. צפייה
מפורט
קווים מנחים או
טכני
לקבלת הנחיות לבניית תוסף חדש.
כתובות URL לדוגמה של מודעות AMP לצורך בדיקה
אפשר להשתמש בדוגמה הבאה לתוכן של מודעת AMPHTML לצורך בדיקה:
משאבים
פרויקט AMP ו-Google הוציאו מספר משאבים שיעזרו לכם להתחיל:
- יצירת מודעות ב-AMP
- AMPHTML מפרט הפורמט של הקריאייטיב של המודעה (GitHub)
- AMPHTML סקירה כללית של מודעות (GitHub)
- מודעות AMPHTML האתר מתוך פרויקט AMP
- דוגמה מודעות AMPHTML
- מהירות השוואה – תוכלו לראות את מהירות הטעינה של מודעת AMPHTML בהשוואה מודעה רגילה. מומלץ לצפות ביותר בחיבור 3G.
- הצעות ספציפיות לבידינג בזמן אמת (RTB) לקבוצת IAB / OpenRTB