將您的技術與 AMP 整合
感謝您對貢獻 AMP 的興趣!我們感謝您的參與,讓網路成為以使用者為中心的平台。
發布商已建立超過 14 億個 AMP 文件,託管在超過 75 萬個獨立網域上。如此成長只有透過超過 100 家第三方科技公司的支持才有可能實現,他們已經與 AMP 整合。
如果您是網路發布商或廣告商的技術供應商,我們邀請您新增對 AMP 的支援!您的客戶可以繼續利用您的技術,同時努力實現我們建立更美好網路的願景。
本文件概述了 AMP 對第三方的期望,並定義了貢獻層級。
貢獻指南
所有一般貢獻均受 CONTRIBUTING.md 中的 AMPHTML 通用指南約束。我們期望第三方在不同程度上測試、維護和更新其貢獻。
為了符合納入資格,所有貢獻層級都必須
- 符合英文維基百科的關注度要求。
- 維持或提升與 AMP 對發布商和使用者承諾的相同類型服務水準。
- 以良好的品質建立。
- 為其客戶建立疑難排解管道。
- 針對 AMP 的正式版和 Canary 版本提供良好的整合測試覆蓋率。
- 實現不存在的目的。
共有 3 個第三方貢獻層級。層級取決於新增邏輯的數量
- 元件邏輯:規定 AMP 元件核心功能和特性的程式碼。
- 第三方邏輯:特定於第三方的程式碼。此邏輯使元件能夠利用第三方服務。
新增至 AMP 儲存庫的邏輯越多,尤其是第三方特定邏輯,貢獻層級就越高。高貢獻層級需要第三方更多的承諾。
Level 1 和 Level 2 貢獻在第三方之間共用元件。如果有一個元件實現了與您的業務類似的目的,請考慮重複使用該元件。這需要更少的工作量,並且更易於長期維護。
在決定哪個貢獻層級符合您的使用案例後,開啟一個 GitHub issue 開始。
Level 1 貢獻
Level 1 貢獻利用現有元件的功能邏輯。它們將第三方特定邏輯作為跨域 iframe 中的自訂 JavaScript 載入。例如,許多廣告聯播網透過 amp-ad
元件提供廣告,但透過自己的邏輯控制廣告的呈現方式。
第三方使用提供的 API 將組態或功能新增至現有擴充功能,以實作其功能。如果不存在此類元件,他們可以提議新增一個。
簽入 AMP 儲存庫的唯一第三方特定邏輯是第三方組態。將新的第三方新增至現有的 Level 1 貢獻通常不需要設計審查。第三方可以遵循元件的整合文件,例如將廣告聯播網整合到 AMP 中。
對第三方的期望
- 獨立維護和提供供應商的自訂 JavaScript。
- 為其組態提供測試並回應問題。
- 為開發人員提供疑難排解管道。
- 回覆與其服務相關的任何和所有錯誤回報。
Level 1 範例
廣告供應商應閱讀 開發概觀 和 開發人員指示,以新增對 amp-ad
的支援。根據貴公司提供的廣告技術,您可能會發現 這些整合指示很有用。
有許多廣告供應商新增了對廣告相關功能(如 amp-ad)的支援。以下是廣告聯播網 Criteo 的範例 Pull Request。
Level 2 貢獻
Level 2 貢獻利用現有元件的功能邏輯。所有邏輯都簽入 AMP 儲存庫,並且無法將自訂 Javascript 載入 iframe 中。例如,分析供應商將其組態新增至 amp-analytics
元件,但包括追蹤資料的端點,例如使用者點擊。
第三方將組態或功能(例如新的 API)新增至現有元件,以實作其功能。如果不存在此類元件,他們可以提議新增一個。
所有業務邏輯都簽入 AMP 儲存庫,但簽入的唯一第三方特定邏輯是第三方組態。如果元件使用第三方提供的組態檔,則不需要設計審查。如果第三方組態實作了新功能或新元件,則需要通過 AMP 的設計審查。
對第三方的期望
- 將新的第三方服務新增至現有的 Level 2 貢獻通常不需要設計審查。第三方可以遵循該元件的文件。
- 為 Level 2 貢獻提議新的元件將需要具有可由其他第三方服務共用的功能邏輯。
Level 2 範例
AMP 分析可讓您根據您設定的觸發條件將事件傳送回您的伺服器。我們編寫了一份分析整合指南,以協助您入門。
如果您只需要將具有動態參數的追蹤像素新增至您的追蹤 URL,請查看 amp-pixel
。請務必在您的支援頁面上記錄使用方式,以供可能想要將您的技術與 AMP 搭配使用的開發人員參考。
有許多分析供應商新增了對 amp-analytics 的支援。以下是分析供應商 Parse.ly 的 範例 Pull Request。
如果您提供通話追蹤量測服務,amp-call-tracking
可能支援您的使用案例。此元件會動態取代超連結中的電話號碼,以透過執行 CORS 請求來替換號碼,從而啟用通話追蹤。
若要深入瞭解此元件如何為您運作,請參閱參考文件。
Level 3 貢獻
Level 3 貢獻引入了新的第三方特定元件。僅當第三方無法
- 找到適用於其使用案例的現有元件時,才適用。
- 請求功能改進以滿足其使用案例。
- 提議適用於其他第三方服務的元件。
對第三方的期望
- 撰寫並提議設計審查。
- 測試必須能夠捕捉到損壞。
- 修復或請求協助(如果元件損壞)。
- 提供包含程式碼範例的完整文件。
- 維護和更新文件。
- 為 AMP 開發人員提供疑難排解管道,以請求協助。