בדף זה מוסבר איך להתחיל להשתמש במודעות 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 וב-Advertising Common Model הנלווה, כמה תוספות לתמיכה במודעות 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 ו-Native. בדרך כלל, רק אחד מתוך 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. מודעות שלא מאומתות כ-AMPHTML תקינות יעובדו באותה מהירות כמו מודעות שאינן AMPHTML.
אפשר להחזיר רק מודעות AMPHTML ברכיב amp_ad_url
.
בעתיד, אם בעל האתר ידרוש שימוש במודעות AMPHTML בלבד, לא יוצגו מודעות שאינן חתומות כ-AMPHTML.
ב-Authorized Buyers, מגישי הצעות המחיר עדיין יחויבו אם הם יחזירו מודעה שאינה AMPHTML למיקום מודעה שנדרש על ידי AMPHTML.
אחזור בצד השרת
כדי שמודעות AMPHTML יוצגו בשלב מוקדם, התוכן של מודעות AMPHTML צריך לעבור עיבוד, ללא צורך בפעולות נוספות מהלקוח. המטרה היא למנוע פגיעה בחוויית המשתמש בגלל זמן האחזור של המודעה וקריאות נוספות בצד הלקוח.
אחרי שמגיש הצעות המחיר זוכה במכרז, פלטפורמת ה-Exchange תבצע בקשה משרת לשרת כדי לאחזר את התוכן של מודעת ה-AMPHTML בכתובת ה-URL שצוינה בשדה amp_ad_url
. שרתי הקריאייטיב חייבים להגיב ולהחזיר תוכן תוך 300 אלפיות השנייה.
מודעת ה-AMPHTML שמוחזרת משרת הקריאייטיב תוחדר למיקום המודעה ולאחר מכן תעובד. שימו לב שמודעת AMPHTML חוקית לא יכולה להכיל מסגרות iframe או תגי <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, הנכסים האלה יופעלו בצד הלקוח, וכתובות URL למעקב אחר הפעלת amp-pixel מופעלות בזמן עיבוד הקריאייטיב. הכלי 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