重要事項:本文件不適用於您目前選擇的格式「電子郵件」!
amp-ad-custom
描述
提供有效 AMPHTML 廣告的替代方法。
必要指令碼
<script async custom-element="amp-ad-custom" src="https://cdn.ampproject.org/v0/amp-ad-custom-0.1.js"></script>
概觀
AMP 範本廣告是提供有效 AMPHTML 廣告的替代方法,無需處理伺服時間驗證和簽署的複雜性。其高階概念是載入以 AMP 撰寫並從授權的 AMP Proxy 伺服器提供的廣告範本,並在用戶端使用從廣告伺服器以 JSON 格式擷取的廣告資料來呈現廣告。
任何廣告聯播網要提供 AMPHTML 範本廣告,整合包含 3 個部分
- AMPHTML 廣告範本建立
- 廣告伺服器變更:廣告伺服端點
- AMP 中的廣告標籤
AMPHTML 廣告範本建立
廣告聯播網以 AMP 格式建立廣告範本,並將其託管在自己的網域上,類似於標準 AMP 頁面。
例如,adnetwork.com 可以在以下 URL 託管範本:https://adnetwork.com/amp_template_1.html
。對應的 AMP Proxy URL 為:https://adnetwork-com.cdn.ampproject.org/ad/s/adnetwork.com/amp_template_1.html.
廣告聯播網的網域名稱 (來源) 作為命名空間,而 URL 路徑則作為其 ID。
Proxy 伺服器會在第一次請求時快取範本。它遵循與一般 AMP 頁面相同的過時重新驗證快取政策,表示每次快取命中後,都會在背景發出同步請求。
為了確保範本是有效的 AMPHTML,廣告聯播網必須向快取 URL 發出 HTTP 請求,如果無效,則會傳回 4XX 錯誤。這也會預熱快取,從而加快首次廣告載入速度。快取 URL 可以依照上述規則從標準 AMP URL 轉換而來 (請參閱此處的詳細 URL 格式)。
若要更新範本,廣告聯播網只需更新其網域上的頁面,然後再次發出快取預熱請求。
廣告伺服器
廣告聯播網需要提供一個新的伺服端點,以 JSON 格式傳回 CORS 回應
{ templateUrl: "https://adexample.com/amp_template_1.html", data: { clickUrl: "https://buy.com/buy-1", buttonText: "Buy now" }, analytics: { type: "googleanalytics", config: { ... } } }
回應需要幾個自訂標頭
- CORS 的自訂標頭
- AMP-Ad-Template-Extension: amp-mustache
- Amp-Ad-Response-Type: template
廣告標籤
`amp-ad-custom` 擴充功能可用於快速宣告廣告版位,使用在資料屬性上設定的鍵值組來形成廣告請求。一個範例版位可能如下所示
<amp-ad-custom width="320" height="50" src="http://www.my-ad-network.com" data-request-param-{param_1}="{val_1}" data-request-param-{param_2}="{val_2}" . . . data-request-param-{param_N}="{val_N}" > </amp-ad-custom>
而產生的廣告請求 URL 將會是:http://www.my-ad-network.com?{param_1}={val_1}&{param_2}={val_2}&...&{param_N}={val_N}
。
您已經讀過這份文件十幾次,但它仍然沒有涵蓋您的所有問題嗎?也許其他人也有同樣的感受:請在 Stack Overflow 上與他們聯繫。
前往 Stack Overflow 發現錯誤或缺少功能?AMP 專案非常鼓勵您的參與和貢獻!我們希望您能成為我們開放原始碼社群的長期參與者,但我們也歡迎您針對您特別熱衷的問題做出一次性的貢獻。
前往 GitHub