本參考資料使用 TypeScript 標記法來描述型別。下表提供簡短說明和範例。
| 輸入運算式 | |
|---|---|
| string | 原始字串型別。 | 
| string[] | 陣列類型,值只能是字串。 | 
| number | string | 聯集型別,值可以是數字或字串。 | 
| Array<number | string> | 陣列型別,其中的值是複合 (聯集) 型別。 | 
| [number, string] | 元組型別,其中值為雙元素陣列,且必須依序包含數字和字串。 | 
| Slot | 物件類型,值為 googletag.Slot的執行個體。 | 
| () => void | 沒有定義引數和傳回值的函式型別。 | 
如要進一步瞭解支援的型別和型別運算式,請參閱 TypeScript 手冊 。
型別註解
變數、參數名稱、屬性名稱或函式簽章後方的冒號表示型別註解。型別註解會說明冒號左側元素可接受或傳回的型別。下表列出您可能會在本參考資料中看到的型別註解範例。
| 型別註解 | |
|---|---|
| param: string | 表示 param接受或傳回字串值。這個語法用於變數、參數、屬性和傳回型別。 | 
| param?: number | string | 表示 param為選用項目,但指定時可接受數字或字串。這個語法用於參數和屬性。 | 
| ...params: Array<() => void> | 指出 params是接受函式的
          其餘參數
        。其餘參數接受指定類型的不限數量值。 | 
googletag
Google 發布商廣告代碼用於 API 的全域命名空間。
| 命名空間 | |
|---|---|
| config | 頁面層級設定的主要設定介面。 | 
| enums | 這是 GPT 用於列舉型別的命名空間。 | 
| events | 這是 GPT 用於事件的命名空間。 | 
| secure | 這是 GPT 用於管理安全信號的命名空間。 | 
| 介面 | |
|---|---|
| Command | 指令陣列會接受一連串的函式,並依序叫用這些函式。 | 
| Companion | 隨播廣告服務。 | 
| Privacy | 隱私權設定的設定物件。 | 
| Pub | 發布商廣告服務。 | 
| Response | 代表單一廣告回應的物件。 | 
| Rewarded | 代表與獎勵廣告相關聯獎勵的物件。 | 
| Service | 基本服務類別,包含所有服務通用的方法。 | 
| Size | 大小對應規格物件的建構工具。 | 
| Slot | Slot 是指代表網頁上單一廣告版位的物件。 | 
| 型別別名 | |
|---|---|
| General | 插槽的有效大小設定,可為一或多個大小。 | 
| Multi | 有效大小的清單。 | 
| Named | 廣告版位可擁有的命名大小。 | 
| Single | 版位的單一有效大小。 | 
| Single | 代表 [寬度、高度] 的兩個數字陣列。 | 
| Size | 可視區域大小與廣告大小的對應關係。 | 
| Size | 大小對應清單。 | 
| 變數 | |
|---|---|
| api | 這個標記表示 GPT API 已載入,隨時可供呼叫。 | 
| cmd | 全域指令佇列的參照,用於非同步執行與 GPT 相關的呼叫。 | 
| pubads | 此標記表示 PubAdsService 已啟用、載入且可正常運作。 | 
| secure | 安全信號供應商陣列的參照。 | 
| 函式 | |
|---|---|
| companion | 傳回 CompanionAdsService 的參照。 | 
| define | 使用指定廣告單元路徑建構非頁內廣告版位。 | 
| define | 使用指定廣告單元路徑和大小建構廣告版位,並將其與網頁上包含廣告的 div 元素 ID 建立關聯。 | 
| destroy | 毀損指定位置,從 GPT 移除這些位置的所有相關物件和參照。 | 
| disable | 停用 Google 發布商控制台。 | 
| display | 指示廣告空間服務轉譯廣告空間。 | 
| enable | 啟用網頁上廣告版位定義的所有 GPT 服務。 | 
| get | 傳回 GPT 的目前版本。 | 
| open | 開啟 Google 發布商控制台。 | 
| pubads | 傳回 PubAdsService 的參照。 | 
| set | 從這一刻起,為 PubAdsService 建立的所有廣告容器 iframe 設定標題。 | 
| set | 設定網頁的一般設定選項。 | 
| size | 建立新的 SizeMappingBuilder。 | 
型別別名
GeneralSize
GeneralSize: SingleSize | MultiSizeMultiSize
MultiSize: SingleSize[]NamedSize
NamedSize: "fluid" | ["fluid"]- 自動調整大小:廣告容器會佔用上層 div 的 100% 寬度,然後調整高度以配合廣告素材內容。與網頁上一般區塊元素的行為類似。用於原生廣告 (請參閱相關文章)。請注意,fluid和['fluid']都是可接受的形式,可將廣告空間大小宣告為彈性。
SingleSize
SingleSize: SingleSizeArray | NamedSizeSingleSizeArray
SingleSizeArray: [number, number]SizeMapping
SizeMapping: [SingleSizeArray, GeneralSize]SizeMappingArray
SizeMappingArray: SizeMapping[]變數
Const apiReady
apiReady: boolean | undefinedundefined。請注意,處理非同步作業的建議方式是使用 googletag.cmd,在 GPT 準備就緒時將回呼排入佇列。這些回呼不必檢查 googletag.apiReady,因為 API 設定完成後,系統保證會執行這些回呼。
Const cmd
cmd: ((this: typeof globalThis) => void)[] | CommandArray網頁上的 GPT 代碼語法會將
googletag.cmd 變數初始化為空白 JavaScript 陣列,而 cmd.push 是標準的 Array.push 方法,可將元素加到陣列結尾。載入 GPT JavaScript 時,系統會檢查陣列並依序執行所有函式。然後,指令碼會將 cmd 替換為 CommandArray 物件,該物件的 push 方法定義為執行傳遞給它的函式引數。這項機制可讓 GPT 非同步擷取 JavaScript,同時允許瀏覽器繼續顯示網頁,進而縮短使用者感受到的延遲時間。- 範例
- JavaScript- googletag.cmd.push(() => { googletag.defineSlot("/1234567/sports", [160, 600]).addService(googletag.pubads()); }); - JavaScript (舊版)- googletag.cmd.push(function () { googletag.defineSlot("/1234567/sports", [160, 600]).addService(googletag.pubads()); }); - TypeScript- googletag.cmd.push(() => { googletag.defineSlot("/1234567/sports", [160, 600])!.addService(googletag.pubads()); }); 
Const pubadsReady
pubadsReady: boolean | undefinedundefined。secureSignalProviders
secureSignalProviders: SecureSignalProvider[] | SecureSignalProvidersArray | undefined安全信號供應商陣列會接受一連串的信號產生函式,並依序叫用這些函式。這個函式旨在取代標準陣列,用於將信號產生函式加入佇列,以便在 GPT 載入後呼叫。
- 範例
- JavaScript- window.googletag = window.googletag || { cmd: [] }; googletag.secureSignalProviders = googletag.secureSignalProviders || []; googletag.secureSignalProviders.push({ id: "collector123", collectorFunction: () => { return Promise.resolve("signal"); }, }); - JavaScript (舊版)- window.googletag = window.googletag || { cmd: [] }; googletag.secureSignalProviders = googletag.secureSignalProviders || []; googletag.secureSignalProviders.push({ id: "collector123", collectorFunction: function () { return Promise.resolve("signal"); }, }); - TypeScript- window.googletag = window.googletag || { cmd: [] }; googletag.secureSignalProviders = googletag.secureSignalProviders || []; googletag.secureSignalProviders.push({ id: "collector123", collectorFunction: () => { return Promise.resolve("signal"); }, }); 
- 另請參閱
函式
companionAds
companionAds(): CompanionAdsService傳回 CompanionAdsService 的參照。
| 傳回 | |
|---|---|
| CompanionAdsService | 隨播廣告服務。 | 
defineOutOfPageSlot
defineOutOfPageSlot(adUnitPath: string, div?: string | OutOfPageFormat): Slot | null使用指定廣告單元路徑建構頁面外廣告版位。
如果是自訂頁面外廣告,
如果是 GPT 管理的非頁內廣告,
如果是自訂頁面外廣告,
div 是包含廣告的 div 元素 ID。詳情請參閱非頁內廣告素材一文。如果是 GPT 管理的非頁內廣告,
div 是支援的 OutOfPageFormat。- 範例
- JavaScript- // Define a custom out-of-page ad slot. googletag.defineOutOfPageSlot("/1234567/sports", "div-1"); // Define a GPT managed web interstitial ad slot. googletag.defineOutOfPageSlot("/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL); - JavaScript (舊版)- // Define a custom out-of-page ad slot. googletag.defineOutOfPageSlot("/1234567/sports", "div-1"); // Define a GPT managed web interstitial ad slot. googletag.defineOutOfPageSlot("/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL); - TypeScript- // Define a custom out-of-page ad slot. googletag.defineOutOfPageSlot("/1234567/sports", "div-1"); // Define a GPT managed web interstitial ad slot. googletag.defineOutOfPageSlot("/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL); 
| 參數 | |
|---|---|
| adUnitPath: string | 包含聯播網代碼和廣告單元代碼的完整廣告單元路徑。 | 
|  | 包含這個廣告單元或 OutOfPageFormat 的 div ID。 | 
| 傳回 | |
|---|---|
| Slot | null | 新建立的運算單元,或 null(如果無法建立運算單元)。 | 
defineSlot
defineSlot(adUnitPath: string, size: GeneralSize, div?: string): Slot | null使用指定廣告單元路徑和大小建構廣告版位,並將其與網頁上包含廣告的 div 元素 ID 建立關聯。
- 範例
- JavaScript- googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); - JavaScript (舊版)- googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); - TypeScript- googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); 
| 參數 | |
|---|---|
| adUnitPath: string | 包含聯播網代碼和單元代碼的完整廣告單元路徑。 | 
| size: GeneralSize | 新增的廣告空間寬度和高度。如果未提供回應式大小對應,或可視區域大小小於對應中提供的最小大小,廣告請求就會使用這個大小。 | 
|  | 包含這個廣告單元的 div ID。 | 
| 傳回 | |
|---|---|
| Slot | null | 新建立的運算單元,或 null(如果無法建立運算單元)。 | 
destroySlots
destroySlots(slots?: Slot[]): boolean毀損指定位置,從 GPT 移除這些位置的所有相關物件和參照。這個 API 不支援回傳廣告空間和隨播廣告空間。
在廣告空間上呼叫這個 API 會清除廣告,並從 GPT 維護的內部狀態中移除廣告空間物件。在 slot 物件上呼叫任何其他函式都會導致未定義的行為。請注意,如果發布商網頁保留對該插槽的參照,瀏覽器可能仍不會釋放與該插槽相關聯的記憶體。呼叫這個 API 可讓與該廣告版位相關聯的 div 供重複使用。
具體來說,移除廣告版位會從 GPT 的長效網頁瀏覽中移除廣告,因此日後的請求不會受到涉及這則廣告的路障型廣告或競爭排除條件影響。如果未先呼叫這個函式,就從網頁中移除廣告空間的 div,就會導致未定義的行為。
在廣告空間上呼叫這個 API 會清除廣告,並從 GPT 維護的內部狀態中移除廣告空間物件。在 slot 物件上呼叫任何其他函式都會導致未定義的行為。請注意,如果發布商網頁保留對該插槽的參照,瀏覽器可能仍不會釋放與該插槽相關聯的記憶體。呼叫這個 API 可讓與該廣告版位相關聯的 div 供重複使用。
具體來說,移除廣告版位會從 GPT 的長效網頁瀏覽中移除廣告,因此日後的請求不會受到涉及這則廣告的路障型廣告或競爭排除條件影響。如果未先呼叫這個函式,就從網頁中移除廣告空間的 div,就會導致未定義的行為。
- 範例
- JavaScript- // The calls to construct an ad and display contents. const slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); googletag.display("div-1"); const slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2"); googletag.display("div-2"); // This call to destroy only slot1. googletag.destroySlots([slot1]); // This call to destroy both slot1 and slot2. googletag.destroySlots([slot1, slot2]); // This call to destroy all slots. googletag.destroySlots(); - JavaScript (舊版)- // The calls to construct an ad and display contents. var slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); googletag.display("div-1"); var slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2"); googletag.display("div-2"); // This call to destroy only slot1. googletag.destroySlots([slot1]); // This call to destroy both slot1 and slot2. googletag.destroySlots([slot1, slot2]); // This call to destroy all slots. googletag.destroySlots(); - TypeScript- // The calls to construct an ad and display contents. const slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1")!; googletag.display("div-1"); const slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2")!; googletag.display("div-2"); // This call to destroy only slot1. googletag.destroySlots([slot1]); // This call to destroy both slot1 and slot2. googletag.destroySlots([slot1, slot2]); // This call to destroy all slots. googletag.destroySlots(); 
| 參數 | |
|---|---|
|  | 要摧毀的格位陣列。陣列為選填,如未指定,系統會毀損所有插槽。 | 
| 傳回 | |
|---|---|
| boolean | 如果已毀損,則為 true,否則為false。 | 
disablePublisherConsole
disablePublisherConsole(): void停用 Google 發布商控制台。
- 另請參閱
螢幕
display(divOrSlot: string | Element | Slot): void指示廣告空間服務轉譯廣告空間。每個廣告版位在每個網頁上只能顯示一次。所有時段都必須定義,且必須與服務建立關聯,才會顯示。元素出現在 DOM 中之前,不得進行顯示呼叫。一般來說,只要將廣告版位放在方法呼叫中指定的 div 元素內的指令碼區塊中即可。
如果使用單一請求架構 (SRA),系統會在呼叫這個方法時,一次擷取所有未擷取的廣告版位。如要強制廣告空間不顯示廣告,必須移除整個 div。
如果使用單一請求架構 (SRA),系統會在呼叫這個方法時,一次擷取所有未擷取的廣告版位。如要強制廣告空間不顯示廣告,必須移除整個 div。
| 參數 | |
|---|---|
| divOrSlot: string | Element | Slot | 包含廣告版位的 div 元素 ID、div 元素或版位物件。如果提供 div 元素,則該元素必須具有與傳遞至 defineSlot 的 ID 相符的「id」屬性。 | 
enableServices
enableServices(): void啟用網頁上廣告版位定義的所有 GPT 服務。
getVersion
getVersion(): string傳回目前版本的 GPT。
- 另請參閱
| 傳回 | |
|---|---|
| string | 目前執行的 GPT 版本字串。 | 
openConsole
openConsole(div?: string): void開啟 Google 發布商控制台。
- 範例
- JavaScript- // Calling with div ID. googletag.openConsole("div-1"); // Calling without div ID. googletag.openConsole(); - JavaScript (舊版)- // Calling with div ID. googletag.openConsole("div-1"); // Calling without div ID. googletag.openConsole(); - TypeScript- // Calling with div ID. googletag.openConsole("div-1"); // Calling without div ID. googletag.openConsole(); 
- 另請參閱
| 參數 | |
|---|---|
|  | 廣告版位 div ID。這個值為選用項目。如果提供廣告版位,發布商控制台會嘗試開啟,並顯示指定廣告版位的詳細資料。 | 
pubads
pubads(): PubAdsService傳回 PubAdsService 的參照。
| 傳回 | |
|---|---|
| PubAdsService | 發布商廣告服務。 | 
setAdIframeTitle
setAdIframeTitle(title: string): void從這一刻起,為 PubAdsService 建立的所有廣告容器 iframe 設定標題。
- 範例
- JavaScript- googletag.setAdIframeTitle("title"); - JavaScript (舊版)- googletag.setAdIframeTitle("title"); - TypeScript- googletag.setAdIframeTitle("title"); 
| 參數 | |
|---|---|
| title: string | 所有廣告容器 iframe 的新標題。 | 
setConfig
setConfig(config: PageSettingsConfig): void設定網頁的一般設定選項。
| 參數 | |
|---|---|
| config: PageSettingsConfig | |
sizeMapping
sizeMapping(): SizeMappingBuildergoogletag.CommandArray
指令陣列會接受一連串的函式,並依序叫用這些函式。這個陣列的用途是取代標準陣列,用於將函式加入佇列,以便在 GPT 載入後叫用。
| 方法 | |
|---|---|
| push | 依序執行引數中指定的函式序列。 | 
方法
推入
push(...f: ((this: typeof globalThis) => void)[]): number依序執行引數中指定的函式序列。
- 範例
- JavaScript- googletag.cmd.push(() => { googletag.defineSlot("/1234567/sports", [160, 600]).addService(googletag.pubads()); }); - JavaScript (舊版)- googletag.cmd.push(function () { googletag.defineSlot("/1234567/sports", [160, 600]).addService(googletag.pubads()); }); - TypeScript- googletag.cmd.push(() => { googletag.defineSlot("/1234567/sports", [160, 600])!.addService(googletag.pubads()); }); 
| 參數 | |
|---|---|
|  | 要執行的 JavaScript 函式。執行階段繫結一律為 globalThis。請考慮傳遞箭頭函式,保留封閉詞法環境的this值。 | 
| 傳回 | |
|---|---|
| number | 目前處理的指令數量。這與 Array.push的傳回值 (陣列目前的長度) 相容。 | 
googletag.CompanionAdsService
延長 
Service隨播廣告服務。影片廣告會使用這項服務顯示隨播廣告。
| 方法 | |
|---|---|
| add | 註冊監聽器,讓您在網頁上發生特定 GPT 事件時,設定及呼叫 JavaScript 函式。 沿用自「 | 
| get | 取得與這項服務相關聯的時段清單。 沿用自「 | 
| remove | 移除先前註冊的接聽程式。 沿用自「 | 
| set | 設定系統是否會自動為尚未獲得廣告的隨播廣告版位補上廣告。 | 
- 另請參閱
方法
setRefreshUnfilledSlots
setRefreshUnfilledSlots(value: boolean): void設定系統是否要自動為尚未獲得廣告的隨播廣告版位補上廣告。
在網頁的生命週期內,這個方法可以多次呼叫,用來開啟及關閉補上廣告功能。只有向 PubAdsService 註冊的版位才會補上廣告。由於政策限制,放送 Ad Exchange 影片時,這個方法無法填滿空白的隨播廣告位置。
在網頁的生命週期內,這個方法可以多次呼叫,用來開啟及關閉補上廣告功能。只有向 PubAdsService 註冊的版位才會補上廣告。由於政策限制,放送 Ad Exchange 影片時,這個方法無法填滿空白的隨播廣告位置。
- 範例
- JavaScript- googletag.companionAds().setRefreshUnfilledSlots(true); - JavaScript (舊版)- googletag.companionAds().setRefreshUnfilledSlots(true); - TypeScript- googletag.companionAds().setRefreshUnfilledSlots(true); 
| 參數 | |
|---|---|
| value: boolean | true自動填回未填入的時段,false則維持不變。 | 
googletag.PrivacySettingsConfig
隱私權設定的設定物件。
| 屬性 | |
|---|---|
| child | 指出是否應將網頁視為兒童導向。 | 
| limited | |
| non | 啟用放送功能,以非個人化廣告模式放送廣告,協助發布商遵守法規。 | 
| restrict | 啟用受限的處理模式,協助發布商遵守法規。 | 
| traffic | 指出請求代表購買或自然流量。 | 
| under | 指出是否要將廣告請求標示為來自未滿規定年齡的使用者。 | 
- 另請參閱
屬性
Optional childDirectedTreatment
Optional limitedAds
limitedAds?: boolean您可以透過兩種方式,指示 GPT 請求受限制的廣告:
- 自動:使用 IAB 資訊公開和同意聲明架構第 2.0 版同意聲明管理平台的信號。
- 手動將這個欄位的值設為 true。
請注意,使用 CMP 時,不必手動啟用受限制的廣告。
- 範例
- JavaScript- // Manually enable limited ads serving. // GPT must be loaded from the limited ads URL to configure this setting. googletag.pubads().setPrivacySettings({ limitedAds: true, }); - JavaScript (舊版)- // Manually enable limited ads serving. // GPT must be loaded from the limited ads URL to configure this setting. googletag.pubads().setPrivacySettings({ limitedAds: true, }); - TypeScript- // Manually enable limited ads serving. // GPT must be loaded from the limited ads URL to configure this setting. googletag.pubads().setPrivacySettings({ limitedAds: true, }); 
- 另請參閱
Optional nonPersonalizedAds
nonPersonalizedAds?: booleanOptional restrictDataProcessing
restrictDataProcessing?: booleanOptional trafficSource
trafficSource?: TrafficSourceundefined。- 範例
- JavaScript- // Indicate requests represent organic traffic. googletag.pubads().setPrivacySettings({ trafficSource: googletag.enums.TrafficSource.ORGANIC, }); // Indicate requests represent purchased traffic. googletag.pubads().setPrivacySettings({ trafficSource: googletag.enums.TrafficSource.PURCHASED, }); - JavaScript (舊版)- // Indicate requests represent organic traffic. googletag.pubads().setPrivacySettings({ trafficSource: googletag.enums.TrafficSource.ORGANIC, }); // Indicate requests represent purchased traffic. googletag.pubads().setPrivacySettings({ trafficSource: googletag.enums.TrafficSource.PURCHASED, }); - TypeScript- // Indicate requests represent organic traffic. googletag.pubads().setPrivacySettings({ trafficSource: googletag.enums.TrafficSource.ORGANIC, }); // Indicate requests represent purchased traffic. googletag.pubads().setPrivacySettings({ trafficSource: googletag.enums.TrafficSource.PURCHASED, }); 
Optional underAgeOfConsent
googletag.PubAdsService
延長 
Service發布商廣告服務。這項服務可用於從 Google Ad Manager 帳戶擷取及顯示廣告。
| 方法 | |
|---|---|
| add | 註冊監聽器,讓您在網頁上發生特定 GPT 事件時,設定及呼叫 JavaScript 函式。 沿用自「 | 
| clear | 從指定插槽移除廣告,並以空白內容取代。 | 
| clear | 清除所有網頁層級廣告類別排除標籤。 | 
| clear | 清除特定鍵或所有鍵的自訂指定目標參數。 | 
| collapse | 啟用收合廣告版位 div,這樣如果沒有可顯示的廣告內容,廣告版位就不會佔用網頁空間。 | 
| disable | 在網頁載入時停用廣告請求,但允許透過 PubAdsService.refresh 呼叫請求廣告。 | 
| display | 使用指定廣告單元路徑和大小建構並顯示廣告版位。 | 
| enable | 根據設定物件定義,在 GPT 中啟用延遲載入。 | 
| enable | 啟用單一要求模式,同時擷取多個廣告。 | 
| enable | 向 GPT 發出信號,表示網頁上會顯示影片廣告。 | 
| get | 傳回與指定鍵相關聯的 AdSense 屬性值。 | 
| get | 傳回這項服務中已設定的屬性鍵。 | 
| get | 取得與這項服務相關聯的時段清單。 沿用自「 | 
| get | 傳回已設定的特定自訂服務層級指定目標參數。 | 
| get | 傳回所有已設定的自訂服務層級指定目標鍵清單。 | 
| is | 傳回先前呼叫 PubAdsService.disableInitialLoad 是否成功停用廣告的初始請求。 | 
| refresh | 擷取並顯示網頁上特定或所有版位的新廣告。 | 
| remove | 移除先前註冊的接聽程式。 沿用自「 | 
| set | 為適用於「發布商廣告」服務中所有廣告版位的 AdSense 屬性設定值。 | 
| set | 為指定標籤名稱設定網頁層級廣告類別排除條件。 | 
| set | 啟用及停用廣告的水平置中功能。 | 
| set | 設定是否應強制使用 SafeFrame 容器顯示網頁上的所有廣告。 | 
| set | 傳遞網站的位置資訊,方便您將委刊項指定到特定地區。 | 
| set | 使用設定物件,透過單一 API 設定所有隱私權設定。 | 
| set | 設定發布商提供 ID 的值。 | 
| set | 設定 SafeFrame 設定的網頁層級偏好設定。 | 
| set | 為特定鍵設定自訂指定目標參數,適用於所有 Publisher Ads 服務廣告版位。 | 
| set | 設定要與廣告請求一併傳送的影片內容資訊,以利指定目標和排除內容。 | 
| update | 變更隨廣告請求傳送的關聯值,有效啟動新的網頁瀏覽。 | 
方法
清楚
clear(slots?: Slot[]): boolean從指定插槽移除廣告,並以空白內容取代。系統會將這些廣告空間標示為未擷取。
特別是,清除廣告空間會從 GPT 的長效網頁瀏覽中移除廣告,因此未來的請求不會受到涉及這則廣告的連鎖廣告或競爭排除條件影響。
特別是,清除廣告空間會從 GPT 的長效網頁瀏覽中移除廣告,因此未來的請求不會受到涉及這則廣告的連鎖廣告或競爭排除條件影響。
- 範例
- JavaScript- const slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); googletag.display("div-1"); const slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2"); googletag.display("div-2"); // This call to clear only slot1. googletag.pubads().clear([slot1]); // This call to clear both slot1 and slot2. googletag.pubads().clear([slot1, slot2]); // This call to clear all slots. googletag.pubads().clear(); - JavaScript (舊版)- var slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); googletag.display("div-1"); var slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2"); googletag.display("div-2"); // This call to clear only slot1. googletag.pubads().clear([slot1]); // This call to clear both slot1 and slot2. googletag.pubads().clear([slot1, slot2]); // This call to clear all slots. googletag.pubads().clear(); - TypeScript- const slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1")!; googletag.display("div-1"); const slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2")!; googletag.display("div-2"); // This call to clear only slot1. googletag.pubads().clear([slot1]); // This call to clear both slot1 and slot2. googletag.pubads().clear([slot1, slot2]); // This call to clear all slots. googletag.pubads().clear(); 
| 參數 | |
|---|---|
|  | 要清除的時段陣列。陣列為選填,如未指定,系統會清除所有時段。 | 
| 傳回 | |
|---|---|
| boolean | 如果已清除時段,則傳回 true,否則傳回false。 | 
clearCategoryExclusions
clearCategoryExclusions(): PubAdsService清除所有網頁層級廣告類別排除標籤。如要重新整理時段,這個方法就非常實用。
- 範例
- JavaScript- // Set category exclusion to exclude ads with 'AirlineAd' labels. googletag.pubads().setCategoryExclusion("AirlineAd"); // Make ad requests. No ad with 'AirlineAd' label will be returned. // Clear category exclusions so all ads can be returned. googletag.pubads().clearCategoryExclusions(); // Make ad requests. Any ad can be returned. - JavaScript (舊版)- // Set category exclusion to exclude ads with 'AirlineAd' labels. googletag.pubads().setCategoryExclusion("AirlineAd"); // Make ad requests. No ad with 'AirlineAd' label will be returned. // Clear category exclusions so all ads can be returned. googletag.pubads().clearCategoryExclusions(); // Make ad requests. Any ad can be returned. - TypeScript- // Set category exclusion to exclude ads with 'AirlineAd' labels. googletag.pubads().setCategoryExclusion("AirlineAd"); // Make ad requests. No ad with 'AirlineAd' label will be returned. // Clear category exclusions so all ads can be returned. googletag.pubads().clearCategoryExclusions(); // Make ad requests. Any ad can be returned. 
- 另請參閱
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
clearTargeting
clearTargeting(key?: string): PubAdsService清除特定鍵或所有鍵的自訂指定目標參數。
- 範例
- JavaScript- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().setTargeting("colors", "blue"); googletag.pubads().setTargeting("fruits", "apple"); googletag.pubads().clearTargeting("interests"); // Targeting 'colors' and 'fruits' are still present, while 'interests' // was cleared. googletag.pubads().clearTargeting(); // All targeting has been cleared. - JavaScript (舊版)- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().setTargeting("colors", "blue"); googletag.pubads().setTargeting("fruits", "apple"); googletag.pubads().clearTargeting("interests"); // Targeting 'colors' and 'fruits' are still present, while 'interests' // was cleared. googletag.pubads().clearTargeting(); // All targeting has been cleared. - TypeScript- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().setTargeting("colors", "blue"); googletag.pubads().setTargeting("fruits", "apple"); googletag.pubads().clearTargeting("interests"); // Targeting 'colors' and 'fruits' are still present, while 'interests' // was cleared. googletag.pubads().clearTargeting(); // All targeting has been cleared. 
- 另請參閱
| 參數 | |
|---|---|
|  | 指定目標參數鍵。這個鍵是選用項目,如果未指定,系統會清除所有指定目標參數。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
collapseEmptyDivs
disableInitialLoad
disableInitialLoad(): void螢幕
display(adUnitPath: string, size: GeneralSize, div?: string | Element, clickUrl?: string): void使用指定廣告單元路徑和大小建構及顯示廣告版位。這個方法不適用於單一請求模式。
注意:呼叫這個方法時,系統會建立廣告空間和網頁狀態的快照,確保傳送廣告請求及算繪回應時的一致性。呼叫這個方法後,對廣告空間或網頁狀態所做的任何變更 (包括指定目標、隱私權設定、強制使用 SafeFrame 等),只會套用至後續的
注意:呼叫這個方法時,系統會建立廣告空間和網頁狀態的快照,確保傳送廣告請求及算繪回應時的一致性。呼叫這個方法後,對廣告空間或網頁狀態所做的任何變更 (包括指定目標、隱私權設定、強制使用 SafeFrame 等),只會套用至後續的
display() 或 refresh() 請求。- 範例
- JavaScript- googletag.pubads().display("/1234567/sports", [728, 90], "div-1"); - JavaScript (舊版)- googletag.pubads().display("/1234567/sports", [728, 90], "div-1"); - TypeScript- googletag.pubads().display("/1234567/sports", [728, 90], "div-1"); 
- 另請參閱
| 參數 | |
|---|---|
| adUnitPath: string | 要算繪的廣告空間廣告單元路徑。 | 
| size: GeneralSize | 插槽的寬度和高度。 | 
|  | 包含插槽的 div ID 或 div 元素本身。 | 
|  | 要在這個位置使用的點擊網址。 | 
enableLazyLoad
enableLazyLoad(config?: { 
  fetchMarginPercent?: number; 
  mobileScaling?: number; 
  renderMarginPercent?: number; 
}): void根據設定物件定義,在 GPT 中啟用延遲載入。如需更詳細的範例,請參閱延遲載入範例。
注意:只有在所有廣告空間都位於擷取邊界外時,SRA 才會延遲擷取廣告。
注意:只有在所有廣告空間都位於擷取邊界外時,SRA 才會延遲擷取廣告。
- 範例
- JavaScript- googletag.pubads().enableLazyLoad({ // Fetch slots within 5 viewports. fetchMarginPercent: 500, // Render slots within 2 viewports. renderMarginPercent: 200, // Double the above values on mobile. mobileScaling: 2.0, }); - JavaScript (舊版)- googletag.pubads().enableLazyLoad({ // Fetch slots within 5 viewports. fetchMarginPercent: 500, // Render slots within 2 viewports. renderMarginPercent: 200, // Double the above values on mobile. mobileScaling: 2.0, }); - TypeScript- googletag.pubads().enableLazyLoad({ // Fetch slots within 5 viewports. fetchMarginPercent: 500, // Render slots within 2 viewports. renderMarginPercent: 200, // Double the above values on mobile. mobileScaling: 2.0, }); 
- 另請參閱
| 參數 | |
|---|---|
|  | 設定物件可自訂延遲行為。如果省略任何設定,系統會使用 Google 預設設定,並隨時間調整。如要停用特定設定 (例如擷取邊界),請將值設為 -1。
 | 
enableSingleRequest
enableSingleRequest(): boolean啟用單一要求模式,同時擷取多個廣告。這項功能需要先定義所有發布商廣告版位,並加入 PubAdsService,才能啟用服務。啟用服務前,必須先設定單一要求模式。
| 傳回 | |
|---|---|
| boolean | 如果已啟用單一請求模式,則傳回 true;如果方法是在服務啟用後呼叫,導致無法啟用單一請求模式,則傳回false。 | 
enableVideoAds
enableVideoAds(): void向 GPT 發出信號,表示網頁上會顯示影片廣告。這項功能可對多媒體廣告和影片廣告啟用競爭排除限制。如果知道影片內容,請呼叫 PubAdsService.setVideoContent,以便對多媒體廣告使用內容排除條件。
get
get(key: string): string傳回與指定鍵相關聯的 AdSense 屬性值。
- 範例
- JavaScript- googletag.pubads().set("adsense_background_color", "#FFFFFF"); googletag.pubads().get("adsense_background_color"); // Returns '#FFFFFF'. - JavaScript (舊版)- googletag.pubads().set("adsense_background_color", "#FFFFFF"); googletag.pubads().get("adsense_background_color"); // Returns '#FFFFFF'. - TypeScript- googletag.pubads().set("adsense_background_color", "#FFFFFF"); googletag.pubads().get("adsense_background_color"); // Returns '#FFFFFF'. 
- 另請參閱
| 參數 | |
|---|---|
| key: string | 要尋找的屬性名稱。 | 
| 傳回 | |
|---|---|
| string | 屬性鍵的目前值,或 null(如果沒有該鍵)。 | 
getAttributeKeys
getAttributeKeys(): string[]傳回這項服務中已設定的屬性鍵。
- 範例
- JavaScript- googletag.pubads().set("adsense_background_color", "#FFFFFF"); googletag.pubads().set("adsense_border_color", "#AABBCC"); googletag.pubads().getAttributeKeys(); // Returns ['adsense_background_color', 'adsense_border_color']. - JavaScript (舊版)- googletag.pubads().set("adsense_background_color", "#FFFFFF"); googletag.pubads().set("adsense_border_color", "#AABBCC"); googletag.pubads().getAttributeKeys(); // Returns ['adsense_background_color', 'adsense_border_color']. - TypeScript- googletag.pubads().set("adsense_background_color", "#FFFFFF"); googletag.pubads().set("adsense_border_color", "#AABBCC"); googletag.pubads().getAttributeKeys(); // Returns ['adsense_background_color', 'adsense_border_color']. 
| 傳回 | |
|---|---|
| string[] | 這個服務上設定的屬性鍵陣列。排序方式未定義。 | 
getTargeting
getTargeting(key: string): string[]傳回已設定的特定自訂服務層級指定目標參數。
- 範例
- JavaScript- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().getTargeting("interests"); // Returns ['sports']. googletag.pubads().getTargeting("age"); // Returns [] (empty array). - JavaScript (舊版)- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().getTargeting("interests"); // Returns ['sports']. googletag.pubads().getTargeting("age"); // Returns [] (empty array). - TypeScript- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().getTargeting("interests"); // Returns ['sports']. googletag.pubads().getTargeting("age"); // Returns [] (empty array). 
| 參數 | |
|---|---|
| key: string | 要尋找的指定鍵。 | 
| 傳回 | |
|---|---|
| string[] | 與這個鍵相關聯的值,如果沒有這類鍵,則為空陣列。 | 
getTargetingKeys
getTargetingKeys(): string[]傳回已設定的所有自訂服務層級指定目標鍵清單。
- 範例
- JavaScript- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().setTargeting("colors", "blue"); googletag.pubads().getTargetingKeys(); // Returns ['interests', 'colors']. - JavaScript (舊版)- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().setTargeting("colors", "blue"); googletag.pubads().getTargetingKeys(); // Returns ['interests', 'colors']. - TypeScript- googletag.pubads().setTargeting("interests", "sports"); googletag.pubads().setTargeting("colors", "blue"); googletag.pubads().getTargetingKeys(); // Returns ['interests', 'colors']. 
| 傳回 | |
|---|---|
| string[] | 指定鍵陣列。排序方式未定義。 | 
isInitialLoadDisabled
isInitialLoadDisabled(): boolean傳回先前呼叫 PubAdsService.disableInitialLoad 是否成功停用廣告的初始請求。
| 傳回 | |
|---|---|
| boolean | 如果先前呼叫 PubAdsService.disableInitialLoad 成功,則傳回 true,否則傳回false。 | 
refresh
refresh(slots?: Slot[], options?: { 
  changeCorrelator: boolean; 
}): void擷取並顯示網頁上特定或所有版位的新廣告。僅適用於非同步顯示模式。
如要在所有瀏覽器中正常運作,呼叫
重新整理廣告空間會從 GPT 的長效網頁瀏覽中移除舊廣告,因此日後的請求不會受到涉及該廣告的路障型廣告或競爭排除條件影響。
如要在所有瀏覽器中正常運作,呼叫
refresh 前必須先呼叫 display 廣告空間。如果省略對 display 的呼叫,重新整理可能會發生非預期的行為。如要停止 display 擷取廣告,可以使用 PubAdsService.disableInitialLoad 方法。重新整理廣告空間會從 GPT 的長效網頁瀏覽中移除舊廣告,因此日後的請求不會受到涉及該廣告的路障型廣告或競爭排除條件影響。
- 範例
- JavaScript- const slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); googletag.display("div-1"); const slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2"); googletag.display("div-2"); // This call to refresh fetches a new ad for slot1 only. googletag.pubads().refresh([slot1]); // This call to refresh fetches a new ad for both slot1 and slot2. googletag.pubads().refresh([slot1, slot2]); // This call to refresh fetches a new ad for each slot. googletag.pubads().refresh(); // This call to refresh fetches a new ad for slot1, without changing // the correlator. googletag.pubads().refresh([slot1], { changeCorrelator: false }); // This call to refresh fetches a new ad for each slot, without // changing the correlator. googletag.pubads().refresh(null, { changeCorrelator: false }); - JavaScript (舊版)- var slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1"); googletag.display("div-1"); var slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2"); googletag.display("div-2"); // This call to refresh fetches a new ad for slot1 only. googletag.pubads().refresh([slot1]); // This call to refresh fetches a new ad for both slot1 and slot2. googletag.pubads().refresh([slot1, slot2]); // This call to refresh fetches a new ad for each slot. googletag.pubads().refresh(); // This call to refresh fetches a new ad for slot1, without changing // the correlator. googletag.pubads().refresh([slot1], { changeCorrelator: false }); // This call to refresh fetches a new ad for each slot, without // changing the correlator. googletag.pubads().refresh(null, { changeCorrelator: false }); - TypeScript- const slot1 = googletag.defineSlot("/1234567/sports", [728, 90], "div-1")!; googletag.display("div-1"); const slot2 = googletag.defineSlot("/1234567/news", [160, 600], "div-2")!; googletag.display("div-2"); // This call to refresh fetches a new ad for slot1 only. googletag.pubads().refresh([slot1]); // This call to refresh fetches a new ad for both slot1 and slot2. googletag.pubads().refresh([slot1, slot2]); // This call to refresh fetches a new ad for each slot. googletag.pubads().refresh(); // This call to refresh fetches a new ad for slot1, without changing // the correlator. googletag.pubads().refresh([slot1], { changeCorrelator: false }); // This call to refresh fetches a new ad for each slot, without // changing the correlator. googletag.pubads().refresh(null, { changeCorrelator: false }); 
- 另請參閱
| 參數 | |
|---|---|
|  | 要重新整理的時段。陣列為選用項目;如未指定,系統會重新整理所有位置。 | 
|  | 與此重新整理呼叫相關聯的設定選項。 
 | 
set
set(key: string, value: string): PubAdsService為適用於「發布商廣告」服務中所有廣告版位的 AdSense 屬性設定值。
如果針對同一個鍵多次呼叫這個函式,系統會覆寫先前為該鍵設定的值。呼叫
如果針對同一個鍵多次呼叫這個函式,系統會覆寫先前為該鍵設定的值。呼叫
display 或 refresh 前,必須先設定所有值。- 範例
- JavaScript- googletag.pubads().set("adsense_background_color", "#FFFFFF"); - JavaScript (舊版)- googletag.pubads().set("adsense_background_color", "#FFFFFF"); - TypeScript- googletag.pubads().set("adsense_background_color", "#FFFFFF"); 
- 另請參閱
| 參數 | |
|---|---|
| key: string | 屬性名稱。 | 
| value: string | 屬性值。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
setCategoryExclusion
setCategoryExclusion(categoryExclusion: string): PubAdsService為指定標籤名稱設定網頁層級廣告類別排除條件。
- 範例
- JavaScript- // Label = AirlineAd. googletag.pubads().setCategoryExclusion("AirlineAd"); - JavaScript (舊版)- // Label = AirlineAd. googletag.pubads().setCategoryExclusion("AirlineAd"); - TypeScript- // Label = AirlineAd. googletag.pubads().setCategoryExclusion("AirlineAd"); 
- 另請參閱
| 參數 | |
|---|---|
| categoryExclusion: string | 要新增的廣告類別排除標籤。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
setCentering
setCentering(centerAds: boolean): void啟用及停用廣告的水平置中功能。這項功能預設為停用。在舊版 gpt_mobile.js 中,系統預設會啟用置中功能。
呼叫
呼叫
display 或 refresh 前,請先叫用這個方法,因為只有在呼叫這個方法後要求的廣告才會置中。- 範例
- JavaScript- // Make ads centered. googletag.pubads().setCentering(true); - JavaScript (舊版)- // Make ads centered. googletag.pubads().setCentering(true); - TypeScript- // Make ads centered. googletag.pubads().setCentering(true); 
| 參數 | |
|---|---|
| centerAds: boolean | true可將廣告置中,false則可將廣告靠左對齊。 | 
setForceSafeFrame
setForceSafeFrame(forceSafeFrame: boolean): PubAdsService設定是否應強制使用 SafeFrame 容器顯示網頁上的所有廣告。
使用這個 API 時,請注意下列事項:
使用這個 API 時,請注意下列事項:
- 這項設定只會對相應廣告空間的後續廣告請求生效。
- 如果指定版位層級設定,系統一律會覆寫網頁層級設定。
- 如果設為 true(在版位層級或網頁層級),無論在 Google Ad Manager 使用者介面中選擇哪個選項,廣告一律會使用 SafeFrame 容器顯示。
- 不過,如果設為 false或未指定,系統會根據廣告素材類型和 Google Ad Manager 使用者介面中的選取項目,使用 SafeFrame 容器顯示廣告。
- 請謹慎使用此 API,因為這可能會影響嘗試脫離 iframe 的廣告素材行為,或影響廣告素材直接在發布商網頁中顯示的行為。
- 範例
- JavaScript- googletag.pubads().setForceSafeFrame(true); // The following slot will be opted-out of the page-level force // SafeFrame instruction. googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setForceSafeFrame(false) .addService(googletag.pubads()); // The following slot will have SafeFrame forced. googletag.defineSlot("/1234567/news", [160, 600], "div-2").addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); - JavaScript (舊版)- googletag.pubads().setForceSafeFrame(true); // The following slot will be opted-out of the page-level force // SafeFrame instruction. googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setForceSafeFrame(false) .addService(googletag.pubads()); // The following slot will have SafeFrame forced. googletag.defineSlot("/1234567/news", [160, 600], "div-2").addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); - TypeScript- googletag.pubads().setForceSafeFrame(true); // The following slot will be opted-out of the page-level force // SafeFrame instruction. googletag .defineSlot("/1234567/sports", [160, 600], "div-1")! .setForceSafeFrame(false) .addService(googletag.pubads()); // The following slot will have SafeFrame forced. googletag.defineSlot("/1234567/news", [160, 600], "div-2")!.addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); 
| 參數 | |
|---|---|
| forceSafeFrame: boolean | true,強制網頁上的所有廣告在 SafeFrame 中顯示,以及false將先前的設定變更為 false。如果先前未指定,將此值設為false不會造成任何變更。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫函式的服務物件。 | 
setLocation
setLocation(address: string): PubAdsService傳遞網站的位置資訊,方便您將委刊項指定至特定位置。
- 範例
- JavaScript- // Postal code: googletag.pubads().setLocation("10001,US"); - JavaScript (舊版)- // Postal code: googletag.pubads().setLocation("10001,US"); - TypeScript- // Postal code: googletag.pubads().setLocation("10001,US"); 
| 參數 | |
|---|---|
| address: string | 任意形式的地址。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
setPrivacySettings
setPrivacySettings(privacySettings: PrivacySettingsConfig): PubAdsService透過設定物件,使用單一 API 設定所有隱私權設定。
- 範例
- JavaScript- googletag.pubads().setPrivacySettings({ restrictDataProcessing: true, }); // Set multiple privacy settings at the same time. googletag.pubads().setPrivacySettings({ childDirectedTreatment: true, underAgeOfConsent: true, }); // Clear the configuration for childDirectedTreatment. googletag.pubads().setPrivacySettings({ childDirectedTreatment: null, }); - JavaScript (舊版)- googletag.pubads().setPrivacySettings({ restrictDataProcessing: true, }); // Set multiple privacy settings at the same time. googletag.pubads().setPrivacySettings({ childDirectedTreatment: true, underAgeOfConsent: true, }); // Clear the configuration for childDirectedTreatment. googletag.pubads().setPrivacySettings({ childDirectedTreatment: null, }); - TypeScript- googletag.pubads().setPrivacySettings({ restrictDataProcessing: true, }); // Set multiple privacy settings at the same time. googletag.pubads().setPrivacySettings({ childDirectedTreatment: true, underAgeOfConsent: true, }); // Clear the configuration for childDirectedTreatment. googletag.pubads().setPrivacySettings({ childDirectedTreatment: null, }); 
| 參數 | |
|---|---|
| privacySettings: PrivacySettingsConfig | 包含隱私權設定的物件。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫函式的服務物件。 | 
setPublisherProvidedId
setPublisherProvidedId(ppid: string): PubAdsService設定發布商提供的 ID 值。
- 範例
- JavaScript- googletag.pubads().setPublisherProvidedId("12JD92JD8078S8J29SDOAKC0EF230337"); - JavaScript (舊版)- googletag.pubads().setPublisherProvidedId("12JD92JD8078S8J29SDOAKC0EF230337"); - TypeScript- googletag.pubads().setPublisherProvidedId("12JD92JD8078S8J29SDOAKC0EF230337"); 
- 另請參閱
| 參數 | |
|---|---|
| ppid: string | 發布商提供的英數字元 ID。長度必須介於 32 到 150 個字元之間。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
setSafeFrameConfig
setSafeFrameConfig(config: SafeFrameConfig): PubAdsService設定 SafeFrame 設定的網頁層級偏好設定。系統會忽略設定物件中無法辨識的鍵。如果為可辨識的鍵傳遞無效值,系統會忽略整個設定。
如果指定版位層級偏好設定,系統會覆寫這些網頁層級偏好設定。
如果指定版位層級偏好設定,系統會覆寫這些網頁層級偏好設定。
- 範例
- JavaScript- googletag.pubads().setForceSafeFrame(true); const pageConfig = { allowOverlayExpansion: true, allowPushExpansion: true, sandbox: true, }; const slotConfig = { allowOverlayExpansion: false }; googletag.pubads().setSafeFrameConfig(pageConfig); // The following slot will not allow for expansion by overlay. googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setSafeFrameConfig(slotConfig) .addService(googletag.pubads()); // The following slot will inherit the page level settings, and hence // would allow for expansion by overlay. googletag.defineSlot("/1234567/news", [160, 600], "div-2").addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); - JavaScript (舊版)- googletag.pubads().setForceSafeFrame(true); var pageConfig = { allowOverlayExpansion: true, allowPushExpansion: true, sandbox: true, }; var slotConfig = { allowOverlayExpansion: false }; googletag.pubads().setSafeFrameConfig(pageConfig); // The following slot will not allow for expansion by overlay. googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setSafeFrameConfig(slotConfig) .addService(googletag.pubads()); // The following slot will inherit the page level settings, and hence // would allow for expansion by overlay. googletag.defineSlot("/1234567/news", [160, 600], "div-2").addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); - TypeScript- googletag.pubads().setForceSafeFrame(true); const pageConfig = { allowOverlayExpansion: true, allowPushExpansion: true, sandbox: true, }; const slotConfig = { allowOverlayExpansion: false }; googletag.pubads().setSafeFrameConfig(pageConfig); // The following slot will not allow for expansion by overlay. googletag .defineSlot("/1234567/sports", [160, 600], "div-1")! .setSafeFrameConfig(slotConfig) .addService(googletag.pubads()); // The following slot will inherit the page level settings, and hence // would allow for expansion by overlay. googletag.defineSlot("/1234567/news", [160, 600], "div-2")!.addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); 
| 參數 | |
|---|---|
| config: SafeFrameConfig | 設定物件。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
setTargeting
setTargeting(key: string, value: string | string[]): PubAdsService為特定鍵設定自訂指定目標參數,適用於所有 Publisher Ads 服務廣告版位。針對相同鍵多次呼叫此函式會覆寫舊值。這些鍵是在 Google Ad Manager 帳戶中定義。
- 範例
- JavaScript- // Example with a single value for a key. googletag.pubads().setTargeting("interests", "sports"); // Example with multiple values for a key inside in an array. googletag.pubads().setTargeting("interests", ["sports", "music"]); - JavaScript (舊版)- // Example with a single value for a key. googletag.pubads().setTargeting("interests", "sports"); // Example with multiple values for a key inside in an array. googletag.pubads().setTargeting("interests", ["sports", "music"]); - TypeScript- // Example with a single value for a key. googletag.pubads().setTargeting("interests", "sports"); // Example with multiple values for a key inside in an array. googletag.pubads().setTargeting("interests", ["sports", "music"]); 
- 另請參閱
| 參數 | |
|---|---|
| key: string | 指定目標參數鍵。 | 
| value: string | string[] | 指定目標參數值或值陣列。 | 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫方法的服務物件。 | 
setVideoContent
setVideoContent(videoContentId: string, videoCmsId: string): void設定要與廣告請求一併傳送的影片內容資訊,以利指定目標和排除內容。呼叫這個方法時,系統會自動啟用影片廣告。對於 
videoContentId 和 videoCmsId,請使用提供給 Google Ad Manager 內容擷取服務的值。- 另請參閱
| 參數 | |
|---|---|
| videoContentId: string | 影片內容 ID。 | 
| videoCmsId: string | 影片 CMS ID。 | 
updateCorrelator
updateCorrelator(): PubAdsService變更隨廣告請求傳送的關聯值,有效啟動新的網頁瀏覽。同一次網頁瀏覽的所有廣告請求都會使用相同的 Correlator,但每次網頁瀏覽的 Correlator 都不一樣。僅適用於非同步模式。
注意:這不會影響 GPT 的長期網頁瀏覽,後者會自動反映網頁上實際顯示的廣告,且沒有到期時間。
注意:這不會影響 GPT 的長期網頁瀏覽,後者會自動反映網頁上實際顯示的廣告,且沒有到期時間。
- 範例
- JavaScript- // Assume that the correlator is currently 12345. All ad requests made // by this page will currently use that value. // Replace the current correlator with a new correlator. googletag.pubads().updateCorrelator(); // The correlator will now be a new randomly selected value, different // from 12345. All subsequent ad requests made by this page will use // the new value. - JavaScript (舊版)- // Assume that the correlator is currently 12345. All ad requests made // by this page will currently use that value. // Replace the current correlator with a new correlator. googletag.pubads().updateCorrelator(); // The correlator will now be a new randomly selected value, different // from 12345. All subsequent ad requests made by this page will use // the new value. - TypeScript- // Assume that the correlator is currently 12345. All ad requests made // by this page will currently use that value. // Replace the current correlator with a new correlator. googletag.pubads().updateCorrelator(); // The correlator will now be a new randomly selected value, different // from 12345. All subsequent ad requests made by this page will use // the new value. 
| 傳回 | |
|---|---|
| PubAdsService | 呼叫函式的服務物件。 | 
googletag.ResponseInformation
代表單一廣告回應的物件。
| 屬性 | |
|---|---|
| advertiser | 廣告主的 ID。 | 
| campaign | 廣告活動的 ID。 | 
| creative | 廣告素材的 ID。 | 
| creative | 廣告的範本 ID。 | 
| line | 商品項目的 ID。 | 
屬性
advertiserId
advertiserId: numbercampaignId
campaignId: numbercreativeId
creativeId: numbercreativeTemplateId
creativeTemplateId: numberlineItemId
lineItemId: numbergoogletag.RewardedPayload
代表與獎勵廣告相關聯獎勵的物件
| 屬性 | |
|---|---|
| amount | 獎勵內含的商品數量。 | 
| type | 獎勵中包含的項目類型 (例如「金幣」)。 | 
- 另請參閱
屬性
amount
amount: numbertype
type: stringgoogletag.Service
基本服務類別,包含所有服務通用的方法。
| 方法 | |
|---|---|
| add | 註冊監聽器,讓您在網頁上發生特定 GPT 事件時,設定及呼叫 JavaScript 函式。 | 
| get | 取得與這項服務相關聯的時段清單。 | 
| remove | 移除先前註冊的接聽程式。 | 
方法
addEventListener
addEventListener<K extends keyof EventTypeMap>(eventType: K, listener: ((arg: EventTypeMap[K]) => void)): Service註冊監聽器,讓您在網頁上發生特定 GPT 事件時,設定及呼叫 JavaScript 函式。支援的事件如下:
- events.GameManualInterstitialSlotClosedEvent
- events.GameManualInterstitialSlotReadyEvent
- events.ImpressionViewableEvent
- events.RewardedSlotClosedEvent
- events.RewardedSlotGrantedEvent
- events.RewardedSlotReadyEvent
- events.SlotOnloadEvent
- events.SlotRenderEndedEvent
- events.SlotRequestedEvent
- events.SlotResponseReceived
- events.SlotVisibilityChangedEvent
- 範例
- JavaScript- // 1. Adding an event listener for the PubAdsService. googletag.pubads().addEventListener("slotOnload", (event) => { console.log("Slot has been loaded:"); console.log(event); }); // 2. Adding an event listener with slot specific logic. // Listeners operate at service level, which means that you cannot add // a listener for an event for a specific slot only. You can, however, // programmatically filter a listener to respond only to a certain ad // slot, using this pattern: const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotOnload", (event) => { if (event.slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // 1. Adding an event listener for the PubAdsService. googletag.pubads().addEventListener("slotOnload", function (event) { console.log("Slot has been loaded:"); console.log(event); }); // 2. Adding an event listener with slot specific logic. // Listeners operate at service level, which means that you cannot add // a listener for an event for a specific slot only. You can, however, // programmatically filter a listener to respond only to a certain ad // slot, using this pattern: var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotOnload", function (event) { if (event.slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // 1. Adding an event listener for the PubAdsService. googletag.pubads().addEventListener("slotOnload", (event) => { console.log("Slot has been loaded:"); console.log(event); }); // 2. Adding an event listener with slot specific logic. // Listeners operate at service level, which means that you cannot add // a listener for an event for a specific slot only. You can, however, // programmatically filter a listener to respond only to a certain ad // slot, using this pattern: const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotOnload", (event) => { if (event.slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
| 參數 | |
|---|---|
| eventType: K | 代表 GPT 產生的事件類型字串。事件類型會區分大小寫。 | 
| listener: ((arg: EventTypeMap[K]) => void) | 函式,採用單一事件物件引數。 | 
| 傳回 | |
|---|---|
| Service | 呼叫方法的服務物件。 | 
getSlots
removeEventListener
removeEventListener<K extends keyof EventTypeMap>(eventType: K, listener: ((event: EventTypeMap[K]) => void)): void移除先前註冊的接聽程式。
- 範例
- JavaScript- googletag.cmd.push(() => { // Define a new ad slot. googletag.defineSlot("/6355419/Travel", [728, 90], "div-for-slot").addService(googletag.pubads()); // Define a new function that removes itself via removeEventListener // after the impressionViewable event fires. const onViewableListener = (event) => { googletag.pubads().removeEventListener("impressionViewable", onViewableListener); setTimeout(() => { googletag.pubads().refresh([event.slot]); }, 30000); }; // Add onViewableListener as a listener for impressionViewable events. googletag.pubads().addEventListener("impressionViewable", onViewableListener); googletag.enableServices(); }); - JavaScript (舊版)- googletag.cmd.push(function () { // Define a new ad slot. googletag.defineSlot("/6355419/Travel", [728, 90], "div-for-slot").addService(googletag.pubads()); // Define a new function that removes itself via removeEventListener // after the impressionViewable event fires. var onViewableListener = function (event) { googletag.pubads().removeEventListener("impressionViewable", onViewableListener); setTimeout(function () { googletag.pubads().refresh([event.slot]); }, 30000); }; // Add onViewableListener as a listener for impressionViewable events. googletag.pubads().addEventListener("impressionViewable", onViewableListener); googletag.enableServices(); }); - TypeScript- googletag.cmd.push(() => { // Define a new ad slot. googletag .defineSlot("/6355419/Travel", [728, 90], "div-for-slot")! .addService(googletag.pubads()); // Define a new function that removes itself via removeEventListener // after the impressionViewable event fires. const onViewableListener = (event: googletag.events.ImpressionViewableEvent) => { googletag.pubads().removeEventListener("impressionViewable", onViewableListener); setTimeout(() => { googletag.pubads().refresh([event.slot]); }, 30000); }; // Add onViewableListener as a listener for impressionViewable events. googletag.pubads().addEventListener("impressionViewable", onViewableListener); googletag.enableServices(); }); 
| 參數 | |
|---|---|
| eventType: K | 代表 GPT 產生的事件類型字串。事件類型會區分大小寫。 | 
| listener: ((event: EventTypeMap[K]) => void) | 函式,採用單一事件物件引數。 | 
googletag.SizeMappingBuilder
大小對應規格物件的建構工具。我們提供這個建構工具,方便您輕鬆建構尺寸規格。
| 方法 | |
|---|---|
| add | 將單一大小的陣列 (代表可視區域) 對應至單一或多個大小的陣列 (代表插槽)。 | 
| build | 根據新增至這個建構工具的對應項目,建構尺寸對應規格。 | 
- 另請參閱
方法
addSize
addSize(viewportSize: SingleSizeArray, slotSize: GeneralSize): SizeMappingBuilder將單一大小的陣列 (代表可視區域) 對應至代表廣告空間的單一或多個大小的陣列。
- 範例
- JavaScript- // Mapping 1 googletag .sizeMapping() .addSize([1024, 768], [970, 250]) .addSize([980, 690], [728, 90]) .addSize([640, 480], "fluid") .addSize([0, 0], [88, 31]) // All viewports < 640x480 .build(); // Mapping 2 googletag .sizeMapping() .addSize([1024, 768], [970, 250]) .addSize([980, 690], []) .addSize([640, 480], [120, 60]) .addSize([0, 0], []) .build(); // Mapping 2 will not show any ads for the following viewport sizes: // [1024, 768] > size >= [980, 690] and // [640, 480] > size >= [0, 0] - JavaScript (舊版)- // Mapping 1 googletag .sizeMapping() .addSize([1024, 768], [970, 250]) .addSize([980, 690], [728, 90]) .addSize([640, 480], "fluid") .addSize([0, 0], [88, 31]) // All viewports < 640x480 .build(); // Mapping 2 googletag .sizeMapping() .addSize([1024, 768], [970, 250]) .addSize([980, 690], []) .addSize([640, 480], [120, 60]) .addSize([0, 0], []) .build(); // Mapping 2 will not show any ads for the following viewport sizes: // [1024, 768] > size >= [980, 690] and // [640, 480] > size >= [0, 0] - TypeScript- // Mapping 1 googletag .sizeMapping() .addSize([1024, 768], [970, 250]) .addSize([980, 690], [728, 90]) .addSize([640, 480], "fluid") .addSize([0, 0], [88, 31]) // All viewports < 640x480 .build(); // Mapping 2 googletag .sizeMapping() .addSize([1024, 768], [970, 250]) .addSize([980, 690], []) .addSize([640, 480], [120, 60]) .addSize([0, 0], []) .build(); // Mapping 2 will not show any ads for the following viewport sizes: // [1024, 768] > size >= [980, 690] and // [640, 480] > size >= [0, 0] 
| 參數 | |
|---|---|
| viewportSize: SingleSizeArray | 這個對應項目的可視區域大小。 | 
| slotSize: GeneralSize | 這個對應項目廣告空間的大小。 | 
| 傳回 | |
|---|---|
| SizeMappingBuilder | 這個建構工具的參照。 | 
建構
build(): SizeMappingArray從新增至這個建構工具的對應項目,建構大小對應規格。
如果提供任何無效的對應項目,這個方法會傳回
注意:呼叫這個方法後,建構工具的行為未定義。
如果提供任何無效的對應項目,這個方法會傳回
null。否則,系統會傳回正確格式的規格,以傳遞至 Slot.defineSizeMapping。注意:呼叫這個方法後,建構工具的行為未定義。
| 傳回 | |
|---|---|
| SizeMappingArray | 這個建構工具建立的結果。如果提供無效的大小對應,則可為空值。 | 
googletag.Slot
Slot 是指代表網頁上單一廣告版位的物件。
| 方法 | |
|---|---|
| add | 將服務新增至這個版位。 | 
| clear | 清除這個廣告空間的所有廣告空間層級廣告類別排除標籤。 | 
| clear | 清除這個版位的特定或所有自訂版位層級指定目標參數。 | 
| define | 為這個廣告空間設定從最小可視區域大小到廣告空間大小的對應陣列。 | 
| get | 傳回與這個廣告空間指定鍵相關聯的 AdSense 屬性值。 | 
| get | 傳回廣告單元的完整路徑,包括聯播網代碼和廣告單元路徑。 | 
| get | 傳回此時段設定的屬性鍵清單。 | 
| get | 傳回這個廣告空間的廣告類別排除標籤。 | 
| get | 傳回廣告回應資訊。 | 
| get | 傳回定義廣告空間時提供的廣告空間 ID  div。 | 
| get | 傳回在這個插槽中設定的特定自訂指定目標參數。 | 
| get | 傳回在這個廣告空間中設定的所有自訂指定目標鍵清單。 | 
| set | 為這個廣告版位設定 AdSense 屬性的值。 | 
| set | 在這個版位上設定版位層級的廣告類別排除標籤。 | 
| set | 設定使用者點按廣告後重新導向的點擊網址。 | 
| set | 設定在廣告版位沒有廣告時,是否應隱藏該版位  div。 | 
| set | 設定這個時段的一般設定選項。 | 
| set | 設定是否應強制使用 SafeFrame 容器顯示這個廣告版位中的廣告。 | 
| set | 設定 SafeFrame 設定的版位層級偏好設定。 | 
| set | 為這個廣告空間設定自訂指定目標參數。 | 
| update | 從 JSON 物件中的鍵/值對應,為這個廣告空間設定自訂指定目標參數。 | 
方法
addService
addService(service: Service): Slot將 Service 新增至這個時段。
- 範例
- JavaScript- googletag.defineSlot("/1234567/sports", [160, 600], "div").addService(googletag.pubads()); - JavaScript (舊版)- googletag.defineSlot("/1234567/sports", [160, 600], "div").addService(googletag.pubads()); - TypeScript- googletag.defineSlot("/1234567/sports", [160, 600], "div")!.addService(googletag.pubads()); 
| 參數 | |
|---|---|
| service: Service | 要新增的服務。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
clearCategoryExclusions
clearCategoryExclusions(): Slot清除這個廣告空間的所有廣告類別排除標籤。
- 範例
- JavaScript- // Set category exclusion to exclude ads with 'AirlineAd' labels. const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setCategoryExclusion("AirlineAd") .addService(googletag.pubads()); // Make an ad request. No ad with 'AirlineAd' label will be returned // for the slot. // Clear category exclusions so all ads can be returned. slot.clearCategoryExclusions(); // Make an ad request. Any ad can be returned for the slot. - JavaScript (舊版)- // Set category exclusion to exclude ads with 'AirlineAd' labels. var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setCategoryExclusion("AirlineAd") .addService(googletag.pubads()); // Make an ad request. No ad with 'AirlineAd' label will be returned // for the slot. // Clear category exclusions so all ads can be returned. slot.clearCategoryExclusions(); // Make an ad request. Any ad can be returned for the slot. - TypeScript- // Set category exclusion to exclude ads with 'AirlineAd' labels. const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setCategoryExclusion("AirlineAd") .addService(googletag.pubads()); // Make an ad request. No ad with 'AirlineAd' label will be returned // for the slot. // Clear category exclusions so all ads can be returned. slot.clearCategoryExclusions(); // Make an ad request. Any ad can be returned for the slot. 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
clearTargeting
clearTargeting(key?: string): Slot清除這個版位的特定或所有自訂版位層級指定目標參數。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setTargeting("allow_expandable", "true") .setTargeting("interests", ["sports", "music"]) .setTargeting("color", "red") .addService(googletag.pubads()); slot.clearTargeting("color"); // Targeting 'allow_expandable' and 'interests' are still present, // while 'color' was cleared. slot.clearTargeting(); // All targeting has been cleared. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setTargeting("allow_expandable", "true") .setTargeting("interests", ["sports", "music"]) .setTargeting("color", "red") .addService(googletag.pubads()); slot.clearTargeting("color"); // Targeting 'allow_expandable' and 'interests' are still present, // while 'color' was cleared. slot.clearTargeting(); // All targeting has been cleared. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setTargeting("allow_expandable", "true") .setTargeting("interests", ["sports", "music"]) .setTargeting("color", "red") .addService(googletag.pubads()); slot.clearTargeting("color"); // Targeting 'allow_expandable' and 'interests' are still present, // while 'color' was cleared. slot.clearTargeting(); // All targeting has been cleared. 
- 另請參閱
| 參數 | |
|---|---|
|  | 指定目標參數鍵。這個鍵是選用項目,如果未指定,系統會清除所有指定目標參數。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
defineSizeMapping
defineSizeMapping(sizeMapping: SizeMappingArray): Slot為這個廣告空間設定從最小可視區域大小到廣告空間大小的對應陣列。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); const mapping = googletag .sizeMapping() .addSize([100, 100], [88, 31]) .addSize( [320, 400], [ [320, 50], [300, 50], ], ) .build(); slot.defineSizeMapping(mapping); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); var mapping = googletag .sizeMapping() .addSize([100, 100], [88, 31]) .addSize( [320, 400], [ [320, 50], [300, 50], ], ) .build(); slot.defineSizeMapping(mapping); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); const mapping = googletag .sizeMapping() .addSize([100, 100], [88, 31]) .addSize( [320, 400], [ [320, 50], [300, 50], ], ) .build(); slot.defineSizeMapping(mapping!); 
- 另請參閱
| 參數 | |
|---|---|
| sizeMapping: SizeMappingArray | 大小對應陣列。您可以使用 SizeMappingBuilder 建立這個物件。每個尺寸對應都是由兩個元素組成的陣列:SingleSizeArray 和 GeneralSize。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
get
get(key: string): string傳回與這個廣告空間指定鍵相關聯的 AdSense 屬性值。如要查看這個版位繼承的服務層級屬性,請使用 PubAdsService.get。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .set("adsense_background_color", "#FFFFFF") .addService(googletag.pubads()); slot.get("adsense_background_color"); // Returns '#FFFFFF'. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .set("adsense_background_color", "#FFFFFF") .addService(googletag.pubads()); slot.get("adsense_background_color"); // Returns '#FFFFFF'. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .set("adsense_background_color", "#FFFFFF") .addService(googletag.pubads()); slot.get("adsense_background_color"); // Returns '#FFFFFF'. 
- 另請參閱
| 參數 | |
|---|---|
| key: string | 要尋找的屬性名稱。 | 
| 傳回 | |
|---|---|
| string | 屬性鍵的目前值,或 null(如果沒有該鍵)。 | 
getAdUnitPath
getAdUnitPath(): string傳回廣告單元的完整路徑,包括聯播網代碼和廣告單元路徑。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); slot.getAdUnitPath(); // Returns '/1234567/sports'. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); slot.getAdUnitPath(); // Returns '/1234567/sports'. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); slot.getAdUnitPath(); // Returns '/1234567/sports'. 
| 傳回 | |
|---|---|
| string | 廣告單元路徑。 | 
getAttributeKeys
getAttributeKeys(): string[]傳回此時段設定的屬性鍵清單。如要查看這個時段繼承的服務層級屬性鍵,請使用 PubAdsService.getAttributeKeys。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .set("adsense_background_color", "#FFFFFF") .set("adsense_border_color", "#AABBCC") .addService(googletag.pubads()); slot.getAttributeKeys(); // Returns ['adsense_background_color', 'adsense_border_color']. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .set("adsense_background_color", "#FFFFFF") .set("adsense_border_color", "#AABBCC") .addService(googletag.pubads()); slot.getAttributeKeys(); // Returns ['adsense_background_color', 'adsense_border_color']. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .set("adsense_background_color", "#FFFFFF") .set("adsense_border_color", "#AABBCC") .addService(googletag.pubads()); slot.getAttributeKeys(); // Returns ['adsense_background_color', 'adsense_border_color']. 
| 傳回 | |
|---|---|
| string[] | 屬性鍵陣列。排序方式未定義。 | 
getCategoryExclusions
getCategoryExclusions(): string[]傳回這個廣告空間的廣告類別排除標籤。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setCategoryExclusion("AirlineAd") .setCategoryExclusion("TrainAd") .addService(googletag.pubads()); slot.getCategoryExclusions(); // Returns ['AirlineAd', 'TrainAd']. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setCategoryExclusion("AirlineAd") .setCategoryExclusion("TrainAd") .addService(googletag.pubads()); slot.getCategoryExclusions(); // Returns ['AirlineAd', 'TrainAd']. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setCategoryExclusion("AirlineAd") .setCategoryExclusion("TrainAd") .addService(googletag.pubads()); slot.getCategoryExclusions(); // Returns ['AirlineAd', 'TrainAd']. 
| 傳回 | |
|---|---|
| string[] | 這個廣告空間的廣告類別排除標籤,如果未設定任何標籤,則為空陣列。 | 
getResponseInformation
getResponseInformation(): ResponseInformation傳回廣告回應資訊。這是根據該廣告空間的最後一個廣告回應。如果在版位沒有廣告時呼叫此方法,系統會傳回 
null。| 傳回 | |
|---|---|
| ResponseInformation | 最新的廣告回應資訊,如果版位沒有廣告,則為 null。 | 
getSlotElementId
getSlotElementId(): string傳回定義廣告空間時提供的廣告空間 ID。
div- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); slot.getSlotElementId(); // Returns 'div'. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); slot.getSlotElementId(); // Returns 'div'. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); slot.getSlotElementId(); // Returns 'div'. 
| 傳回 | |
|---|---|
| string | 運算單元 divID。 | 
getTargeting
getTargeting(key: string): string[]傳回在這個廣告空間中設定的特定自訂指定目標參數。不含服務層級指定目標參數。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setTargeting("allow_expandable", "true") .addService(googletag.pubads()); slot.getTargeting("allow_expandable"); // Returns ['true']. slot.getTargeting("age"); // Returns [] (empty array). - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setTargeting("allow_expandable", "true") .addService(googletag.pubads()); slot.getTargeting("allow_expandable"); // Returns ['true']. slot.getTargeting("age"); // Returns [] (empty array). - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setTargeting("allow_expandable", "true") .addService(googletag.pubads()); slot.getTargeting("allow_expandable"); // Returns ['true']. slot.getTargeting("age"); // Returns [] (empty array). 
| 參數 | |
|---|---|
| key: string | 要尋找的指定鍵。 | 
| 傳回 | |
|---|---|
| string[] | 與這個鍵相關聯的值,如果沒有這類鍵,則為空陣列。 | 
getTargetingKeys
getTargetingKeys(): string[]傳回這個插槽中設定的所有自訂指定目標鍵清單。不含服務層級指定鍵。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setTargeting("allow_expandable", "true") .setTargeting("interests", ["sports", "music"]) .addService(googletag.pubads()); slot.getTargetingKeys(); // Returns ['interests', 'allow_expandable']. - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .setTargeting("allow_expandable", "true") .setTargeting("interests", ["sports", "music"]) .addService(googletag.pubads()); slot.getTargetingKeys(); // Returns ['interests', 'allow_expandable']. - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setTargeting("allow_expandable", "true") .setTargeting("interests", ["sports", "music"]) .addService(googletag.pubads()); slot.getTargetingKeys(); // Returns ['interests', 'allow_expandable']. 
| 傳回 | |
|---|---|
| string[] | 指定鍵陣列。排序方式未定義。 | 
set
set(key: string, value: string): Slot為這個廣告版位設定 AdSense 屬性的值。這會覆寫此鍵在服務層級設定的任何值。
針對相同鍵多次呼叫這個方法,會覆寫先前為該鍵設定的值。呼叫
針對相同鍵多次呼叫這個方法,會覆寫先前為該鍵設定的值。呼叫
display 或 refresh 前,必須先設定所有值。- 範例
- JavaScript- // Setting an attribute on a single ad slot. googletag .defineSlot("/1234567/sports", [160, 600], "div") .set("adsense_background_color", "#FFFFFF") .addService(googletag.pubads()); - JavaScript (舊版)- // Setting an attribute on a single ad slot. googletag .defineSlot("/1234567/sports", [160, 600], "div") .set("adsense_background_color", "#FFFFFF") .addService(googletag.pubads()); - TypeScript- // Setting an attribute on a single ad slot. googletag .defineSlot("/1234567/sports", [160, 600], "div")! .set("adsense_background_color", "#FFFFFF") .addService(googletag.pubads()); 
- 另請參閱
| 參數 | |
|---|---|
| key: string | 屬性名稱。 | 
| value: string | 屬性值。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
setCategoryExclusion
setCategoryExclusion(categoryExclusion: string): Slot在這個版位上設定版位層級的廣告類別排除標籤。
- 範例
- JavaScript- // Label = AirlineAd googletag .defineSlot("/1234567/sports", [160, 600], "div") .setCategoryExclusion("AirlineAd") .addService(googletag.pubads()); - JavaScript (舊版)- // Label = AirlineAd googletag .defineSlot("/1234567/sports", [160, 600], "div") .setCategoryExclusion("AirlineAd") .addService(googletag.pubads()); - TypeScript- // Label = AirlineAd googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setCategoryExclusion("AirlineAd") .addService(googletag.pubads()); 
- 另請參閱
| 參數 | |
|---|---|
| categoryExclusion: string | 要新增的廣告類別排除標籤。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
setClickUrl
setClickUrl(value: string): Slot設定使用者點按廣告後重新導向的點擊網址。
即使點擊網址遭到取代,Google Ad Manager 伺服器仍會記錄點擊次數。系統會將與放送廣告素材相關聯的任何到達網頁網址,附加至提供的值。後續呼叫會覆寫該值。這項功能僅適用於非 SRA 要求。
即使點擊網址遭到取代,Google Ad Manager 伺服器仍會記錄點擊次數。系統會將與放送廣告素材相關聯的任何到達網頁網址,附加至提供的值。後續呼叫會覆寫該值。這項功能僅適用於非 SRA 要求。
- 範例
- JavaScript- googletag .defineSlot("/1234567/sports", [160, 600], "div") .setClickUrl("http://www.example.com?original_click_url=") .addService(googletag.pubads()); - JavaScript (舊版)- googletag .defineSlot("/1234567/sports", [160, 600], "div") .setClickUrl("http://www.example.com?original_click_url=") .addService(googletag.pubads()); - TypeScript- googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setClickUrl("http://www.example.com?original_click_url=") .addService(googletag.pubads()); 
| 參數 | |
|---|---|
| value: string | 要設定的點擊網址。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
setCollapseEmptyDiv
setCollapseEmptyDiv(collapse: boolean, collapseBeforeAdFetch?: boolean): Slot設定在廣告版位沒有廣告時,是否應隱藏該版位 
div。這會覆寫服務層級設定。- 範例
- JavaScript- googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setCollapseEmptyDiv(true, true) .addService(googletag.pubads()); // The above will cause the div for this slot to be collapsed // when the page is loaded, before ads are requested. googletag .defineSlot("/1234567/sports", [160, 600], "div-2") .setCollapseEmptyDiv(true) .addService(googletag.pubads()); // The above will cause the div for this slot to be collapsed // only after GPT detects that no ads are available for the slot. - JavaScript (舊版)- googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setCollapseEmptyDiv(true, true) .addService(googletag.pubads()); // The above will cause the div for this slot to be collapsed // when the page is loaded, before ads are requested. googletag .defineSlot("/1234567/sports", [160, 600], "div-2") .setCollapseEmptyDiv(true) .addService(googletag.pubads()); // The above will cause the div for this slot to be collapsed // only after GPT detects that no ads are available for the slot. - TypeScript- googletag .defineSlot("/1234567/sports", [160, 600], "div-1")! .setCollapseEmptyDiv(true, true) .addService(googletag.pubads()); // The above will cause the div for this slot to be collapsed // when the page is loaded, before ads are requested. googletag .defineSlot("/1234567/sports", [160, 600], "div-2")! .setCollapseEmptyDiv(true) .addService(googletag.pubads()); // The above will cause the div for this slot to be collapsed // only after GPT detects that no ads are available for the slot. 
| 參數 | |
|---|---|
| collapse: boolean | 如果未傳回廣告,是否要收合版位。 | 
|  | 是否要在擷取廣告前收合廣告空間。如果摺疊不是 true,則會遭到忽略。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
setConfig
setConfig(slotConfig: SlotSettingsConfig): void設定這個時段的一般設定選項。
| 參數 | |
|---|---|
| slotConfig: SlotSettingsConfig | 設定物件。 | 
setForceSafeFrame
setForceSafeFrame(forceSafeFrame: boolean): Slot設定是否應強制使用 SafeFrame 容器顯示這個版位中的廣告。
使用這個 API 時,請注意下列事項:
使用這個 API 時,請注意下列事項:
- 這項設定只會對相應廣告空間的後續廣告請求生效。
- 如果指定版位層級設定,系統一律會覆寫網頁層級設定。
- 如果設為 true(在版位層級或網頁層級),無論在 Google Ad Manager 使用者介面中選擇哪個選項,廣告一律會使用 SafeFrame 容器顯示。
- 不過,如果設為 false或未指定,系統會根據廣告素材類型和 Google Ad Manager 使用者介面中的選取項目,使用 SafeFrame 容器顯示廣告。
- 請謹慎使用此 API,因為這可能會影響嘗試脫離 iframe 的廣告素材行為,或影響廣告素材直接在發布商網頁中顯示的行為。
- 範例
- JavaScript- googletag .defineSlot("/1234567/sports", [160, 600], "div") .setForceSafeFrame(true) .addService(googletag.pubads()); - JavaScript (舊版)- googletag .defineSlot("/1234567/sports", [160, 600], "div") .setForceSafeFrame(true) .addService(googletag.pubads()); - TypeScript- googletag .defineSlot("/1234567/sports", [160, 600], "div")! .setForceSafeFrame(true) .addService(googletag.pubads()); 
| 參數 | |
|---|---|
| forceSafeFrame: boolean | true:強制在這個廣告空間中,以 SafeFrame 顯示所有廣告。false:選擇不採用網頁層級設定 (如有)。如果未在網頁層級指定,將此值設為false不會造成任何變更。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
setSafeFrameConfig
setSafeFrameConfig(config: SafeFrameConfig): Slot設定 SafeFrame 設定的版位層級偏好設定。系統會忽略設定物件中無法辨識的鍵。如果為可辨識的鍵傳遞無效值,系統會忽略整個設定。
如果指定這些版位層級偏好設定,系統會覆寫所有網頁層級偏好設定。
如果指定這些版位層級偏好設定,系統會覆寫所有網頁層級偏好設定。
- 範例
- JavaScript- googletag.pubads().setForceSafeFrame(true); // The following slot will have a sandboxed safeframe that only // disallows top-level navigation. googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setSafeFrameConfig({ sandbox: true }) .addService(googletag.pubads()); // The following slot will inherit page-level settings. googletag.defineSlot("/1234567/news", [160, 600], "div-2").addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); - JavaScript (舊版)- googletag.pubads().setForceSafeFrame(true); // The following slot will have a sandboxed safeframe that only // disallows top-level navigation. googletag .defineSlot("/1234567/sports", [160, 600], "div-1") .setSafeFrameConfig({ sandbox: true }) .addService(googletag.pubads()); // The following slot will inherit page-level settings. googletag.defineSlot("/1234567/news", [160, 600], "div-2").addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); - TypeScript- googletag.pubads().setForceSafeFrame(true); // The following slot will have a sandboxed safeframe that only // disallows top-level navigation. googletag .defineSlot("/1234567/sports", [160, 600], "div-1")! .setSafeFrameConfig({ sandbox: true }) .addService(googletag.pubads()); // The following slot will inherit page-level settings. googletag.defineSlot("/1234567/news", [160, 600], "div-2")!.addService(googletag.pubads()); googletag.display("div-1"); googletag.display("div-2"); 
| 參數 | |
|---|---|
| config: SafeFrameConfig | 設定物件。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
setTargeting
setTargeting(key: string, value: string | string[]): Slot為這個廣告空間設定自訂指定目標參數。針對同一個鍵多次呼叫這個方法,會覆寫舊值。在這裡設定的值會覆寫在服務層級設定的指定目標參數。這些鍵是在 Google Ad Manager 帳戶中定義。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Example with a single value for a key. slot.setTargeting("allow_expandable", "true"); // Example with multiple values for a key inside in an array. slot.setTargeting("interests", ["sports", "music"]); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Example with a single value for a key. slot.setTargeting("allow_expandable", "true"); // Example with multiple values for a key inside in an array. slot.setTargeting("interests", ["sports", "music"]); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Example with a single value for a key. slot.setTargeting("allow_expandable", "true"); // Example with multiple values for a key inside in an array. slot.setTargeting("interests", ["sports", "music"]); 
- 另請參閱
| 參數 | |
|---|---|
| key: string | 指定目標參數鍵。 | 
| value: string | string[] | 指定目標參數值或值陣列。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
updateTargetingFromMap
updateTargetingFromMap(map: { 
  [adUnitPath: string]: string | string[]; 
}): Slot從 JSON 物件中的鍵/值對應,為這個廣告空間設定自訂指定目標參數。這與為物件的所有鍵值呼叫 Slot.setTargeting 相同。這些鍵是在 Google Ad Manager 帳戶中定義。
注意:
注意:
- 如果覆寫,系統只會保留最後一個值。
- 如果值是陣列,系統會覆寫先前的值,不會合併。
- 這裡設定的值會覆寫在服務層級設定的指定目標參數。
- 範例
- JavaScript- const slot = googletag.defineSlot("/1234567/sports", [160, 600], "div"); slot.updateTargetingFromMap({ color: "red", interests: ["sports", "music", "movies"], }); - JavaScript (舊版)- var slot = googletag.defineSlot("/1234567/sports", [160, 600], "div"); slot.updateTargetingFromMap({ color: "red", interests: ["sports", "music", "movies"], }); - TypeScript- const slot = googletag.defineSlot("/1234567/sports", [160, 600], "div")!; slot.updateTargetingFromMap({ color: "red", interests: ["sports", "music", "movies"], }); 
| 參數 | |
|---|---|
| map: {  | 指定目標參數鍵/值對應。 | 
| 傳回 | |
|---|---|
| Slot | 呼叫方法的 slot 物件。 | 
googletag.config
頁面層級設定的主要設定介面。
| 介面 | |
|---|---|
| Ad | 控制廣告展開的設定。 | 
| Ad | 用來控管 AdSense 廣告行為的設定。 | 
| Component | 代表裝置端廣告競價中的單一元件競價。 | 
| Interstitial | 這個物件定義單一插頁式廣告版位的行為。 | 
| Lazy | 控制 GPT 中延遲載入功能的設定。 | 
| Page | 頁面層級設定的主要設定介面。 | 
| Privacy | 用來控管發布商隱私權處理方式的設定。 | 
| Publisher | 發布商提供的信號 (PPS) 設定物件。 | 
| Safe | 在 GPT 中控管 SafeFrame 的設定。 | 
| Slot | 版位層級設定的主要設定介面。 | 
| Taxonomy | |
| Video | 設定:設定影片廣告相關設定。 | 
| 型別別名 | |
|---|---|
| Interstitial | 支援插頁式廣告觸發條件。 | 
| Privacy | 支援的發布商隱私權處理方式。 | 
| Taxonomy | 發布商提供的信號 (PPS) 支援的分類。 | 
型別別名
InterstitialTrigger
InterstitialTrigger: "unhideWindow" | "navBar"PrivacyTreatment
PrivacyTreatment: "disablePersonalization"分類
Taxonomy: "IAB_AUDIENCE_1_1" | "IAB_CONTENT_2_2"googletag.config.AdExpansionConfig
控制廣告展開的設定。
| 屬性 | |
|---|---|
| enabled | 廣告展開功能是否已啟用。 | 
- 範例
- JavaScript- // Enable ad slot expansion across the entire page. googletag.setConfig({ adExpansion: { enabled: true }, }); - JavaScript (舊版)- // Enable ad slot expansion across the entire page. googletag.setConfig({ adExpansion: { enabled: true }, }); - TypeScript- // Enable ad slot expansion across the entire page. googletag.setConfig({ adExpansion: { enabled: true }, }); 
屬性
Optional 已啟用
enabled?: boolean設定這個值會覆寫 Google Ad Manager 中設定的預設值。
googletag.config.AdSenseAttributesConfig
控制 AdSense 廣告行為的設定。
這些屬性可用於根據每個要求覆寫伺服器端設定。
這些屬性可用於根據每個要求覆寫伺服器端設定。
| 屬性 | |
|---|---|
| adsense | AdSense 廣告格式。 | 
| adsense | AdSense 管道 ID。 | 
| adsense | 是否啟用測試模式。 | 
| document | 顯示廣告的網頁語言。 | 
| page | 顯示廣告的網頁網址。 | 
屬性
Optional adsense_ad_format
adsense_ad_format?: "120x240_as" | "120x600_as" | "125x125_as" | "160x600_as" | "180x150_as" | "200x200_as" | "234x60_as" | "250x250_as" | "300x250_as" | "336x280_as" | "468x60_as" | "728x90_as"Optional adsense_channel_ids
Optional adsense_test_mode
adsense_test_mode?: "on"設為
on 時,廣告會標示為僅供測試,不會計入計數或帳單。如果是正式版,非測試流量,則必須取消設定這項設定。Optional document_language
Optional page_url
page_url?: string允許的值為有效網址。
範例:
http://www.example.comgoogletag.config.ComponentAuctionConfig
代表裝置端廣告競價中的單一元件競價。
| 屬性 | |
|---|---|
| auction | 這個元件競價的競價設定物件。 | 
| config | 與這個元件競價相關聯的設定鍵。 | 
屬性
auctionConfig
auctionConfig: { 
  auctionSignals?: unknown; 
  decisionLogicURL: string; 
  interestGroupBuyers?: string[]; 
  perBuyerExperimentGroupIds?: { 
    [buyer: string]: number; 
  }; 
  perBuyerGroupLimits?: { 
    [buyer: string]: number; 
  }; 
  perBuyerSignals?: { 
    [buyer: string]: unknown; 
  }; 
  perBuyerTimeouts?: { 
    [buyer: string]: number; 
  }; 
  seller: string; 
  sellerExperimentGroupId?: number; 
  sellerSignals?: unknown; 
  sellerTimeout?: number; 
  trustedScoringSignalsURL?: string; 
}如果這個值設為
null,系統會刪除指定 configKey 的所有現有設定。- 範例
- JavaScript- const componentAuctionConfig = { // Seller URL should be https and the same as decisionLogicURL's origin seller: "https://testSeller.com", decisionLogicURL: "https://testSeller.com/ssp/decision-logic.js", interestGroupBuyers: ["https://example-buyer.com"], auctionSignals: { auction_signals: "auction_signals" }, sellerSignals: { seller_signals: "seller_signals" }, perBuyerSignals: { // listed on interestGroupBuyers "https://example-buyer.com": { per_buyer_signals: "per_buyer_signals", }, }, }; const auctionSlot = googletag.defineSlot("/1234567/example", [160, 600]); // To add configKey to the component auction: auctionSlot.setConfig({ componentAuction: [ { configKey: "https://testSeller.com", auctionConfig: componentAuctionConfig, }, ], }); // To remove configKey from the component auction: auctionSlot.setConfig({ componentAuction: [ { configKey: "https://testSeller.com", auctionConfig: null, }, ], }); - JavaScript (舊版)- var componentAuctionConfig = { // Seller URL should be https and the same as decisionLogicURL's origin seller: "https://testSeller.com", decisionLogicURL: "https://testSeller.com/ssp/decision-logic.js", interestGroupBuyers: ["https://example-buyer.com"], auctionSignals: { auction_signals: "auction_signals" }, sellerSignals: { seller_signals: "seller_signals" }, perBuyerSignals: { // listed on interestGroupBuyers "https://example-buyer.com": { per_buyer_signals: "per_buyer_signals", }, }, }; var auctionSlot = googletag.defineSlot("/1234567/example", [160, 600]); // To add configKey to the component auction: auctionSlot.setConfig({ componentAuction: [ { configKey: "https://testSeller.com", auctionConfig: componentAuctionConfig, }, ], }); // To remove configKey from the component auction: auctionSlot.setConfig({ componentAuction: [ { configKey: "https://testSeller.com", auctionConfig: null, }, ], }); - TypeScript- const componentAuctionConfig = { // Seller URL should be https and the same as decisionLogicURL's origin seller: "https://testSeller.com", decisionLogicURL: "https://testSeller.com/ssp/decision-logic.js", interestGroupBuyers: ["https://example-buyer.com"], auctionSignals: { auction_signals: "auction_signals" }, sellerSignals: { seller_signals: "seller_signals" }, perBuyerSignals: { // listed on interestGroupBuyers "https://example-buyer.com": { per_buyer_signals: "per_buyer_signals", }, }, }; const auctionSlot = googletag.defineSlot("/1234567/example", [160, 600])!; // To add configKey to the component auction: auctionSlot.setConfig({ componentAuction: [ { configKey: "https://testSeller.com", auctionConfig: componentAuctionConfig, }, ], }); // To remove configKey from the component auction: auctionSlot.setConfig({ componentAuction: [ { configKey: "https://testSeller.com", auctionConfig: null, }, ], }); 
configKey
configKey: string這個值不得為空,且不得重複。如果兩個
ComponentAuctionConfig 物件共用相同的 configKey 值,最後設定的物件會覆寫先前的設定。googletag.config.InterstitialConfig
這個物件定義單一插頁式廣告版位的行為。
| 屬性 | |
|---|---|
| require | 是否需要取得本機儲存空間的存取權,才能顯示這個插頁式廣告。 | 
| triggers | 這個插頁式廣告的插頁式觸發條件設定。 | 
屬性
Optional requireStorageAccess
requireStorageAccess?: booleanGPT 會使用本機儲存空間,強制執行插頁式廣告的展示頻率上限。不過,未提供本機儲存空間同意聲明的使用者,仍有資格看到插頁式廣告。將這項屬性設為
true 可停用預設行為,並確保插頁式廣告只會向已同意本機儲存空間的使用者顯示。- 範例
- JavaScript- // Opt out of showing interstitials to users // without local storage consent. const interstitialSlot = googletag.defineOutOfPageSlot( "/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL, ); interstitialSlot.setConfig({ interstitial: { requireStorageAccess: true, // defaults to false }, }); - JavaScript (舊版)- // Opt out of showing interstitials to users // without local storage consent. var interstitialSlot = googletag.defineOutOfPageSlot( "/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL, ); interstitialSlot.setConfig({ interstitial: { requireStorageAccess: true, // defaults to false }, }); - TypeScript- // Opt out of showing interstitials to users // without local storage consent. const interstitialSlot = googletag.defineOutOfPageSlot( "/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL, )!; interstitialSlot.setConfig({ interstitial: { requireStorageAccess: true, // defaults to false }, }); 
- 另請參閱
Optional triggers
triggers?: Partial<Record<InterstitialTrigger, boolean>>將插頁式觸發條件的值設為
true 可啟用,設為 false 則可停用。這會覆寫在 Google Ad Manager 中設定的預設值。- 範例
- JavaScript- // Define a GPT managed web interstitial ad slot. const interstitialSlot = googletag.defineOutOfPageSlot( "/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL, ); // Enable optional interstitial triggers. // Change this value to false to disable. const enableTriggers = true; interstitialSlot.setConfig({ interstitial: { triggers: { navBar: enableTriggers, unhideWindow: enableTriggers, }, }, }); - JavaScript (舊版)- // Define a GPT managed web interstitial ad slot. var interstitialSlot = googletag.defineOutOfPageSlot( "/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL, ); // Enable optional interstitial triggers. // Change this value to false to disable. var enableTriggers = true; interstitialSlot.setConfig({ interstitial: { triggers: { navBar: enableTriggers, unhideWindow: enableTriggers, }, }, }); - TypeScript- // Define a GPT managed web interstitial ad slot. const interstitialSlot = googletag.defineOutOfPageSlot( "/1234567/sports", googletag.enums.OutOfPageFormat.INTERSTITIAL, )!; // Enable optional interstitial triggers. // Change this value to false to disable. const enableTriggers = true; interstitialSlot.setConfig({ interstitial: { triggers: { navBar: enableTriggers, unhideWindow: enableTriggers, }, }, }); 
- 另請參閱
googletag.config.LazyLoadConfig
控制 GPT 中延遲載入功能的設定。
| 屬性 | |
|---|---|
| fetch | 廣告版位與目前可視區域的最小距離,以可視區域大小的百分比表示。系統必須達到這個距離,才會要求放送廣告。 | 
| mobile | 套用至行動裝置邊界的乘數。 | 
| render | 廣告版位與目前可視區域的最小距離,以可視區域大小的百分比表示。系統必須達到這個距離,才會顯示廣告。 | 
屬性
Optional fetchMarginPercent
fetchMarginPercent?: number搭配 renderMarginPercent 使用時,這項設定可預先擷取廣告,但會等待算繪及下載其他子資源。因此,這個值一律應大於或等於 renderMarginPercent。
值為
0 表示「當廣告空間進入可視區域時」,100 表示「當廣告距離可視區域 1 個可視區域時」,依此類推。Optional mobileScaling
mobileScaling?: number這樣一來,行動裝置和電腦就能使用不同的邊界,因為可視區域大小和捲動速度可能不同。舉例來說,如果值為 2.0,系統會將行動裝置上的所有邊界乘以 2,增加擷取及算繪前,廣告空間與可視區域的最小距離。
Optional renderMarginPercent
renderMarginPercent?: number搭配 fetchMarginPercent 使用時,這項設定可預先擷取廣告,但會等待算繪及下載其他子資源。因此,這個值應一律小於或等於 fetchMarginPercent。
值為
0 表示「當廣告空間進入可視區域時」,100 表示「當廣告距離可視區域 1 個視埠時」,依此類推。googletag.config.PageSettingsConfig
網頁層級設定的主要設定介面。
可透過單一 API 呼叫設定多項功能。
以下列出的所有屬性都是範例,不代表實際使用 setConfig 的功能。如需功能集,請參閱下方的 PageSettingsConfig 類型中的欄位。
範例:
可透過單一 API 呼叫設定多項功能。
以下列出的所有屬性都是範例,不代表實際使用 setConfig 的功能。如需功能集,請參閱下方的 PageSettingsConfig 類型中的欄位。
範例:
- 系統只會修改 googletag.setConfig 呼叫中指定的功能。// Configure feature alpha. googletag.setConfig({ alpha: {...} }); // Configure feature bravo. Feature alpha is unchanged. googletag.setConfig({ bravo: {...} }); 
- 每次呼叫 googletag.setConfig 時,系統都會更新特定功能的所有設定。// Configure feature charlie to echo = 1, foxtrot = true. googletag.setConfig({ charlie: { echo: 1, foxtrot: true, } }); // Update feature charlie to echo = 2. Since foxtrot was not specified, // the value is cleared. googletag.setConfig({ charlie: { echo: 2 } }); 
- 如要清除某項功能的所有設定,請傳遞 null。// Configure features delta, golf, and hotel. googletag.setConfig({ delta: {...}, golf: {...}, hotel: {...}, }); // Feature delta and hotel are cleared, but feature golf remains set. googletag.setConfig({ delta: null, hotel: null, }); 
| 屬性 | |
|---|---|
| ad | 控制廣告展開的設定。 | 
| adsense | 設定 AdSense 屬性。 | 
| ad | 已淘汰。  | 
| category | 設定廣告類別排除條件。 | 
| centering | 設定,可控制廣告的水平置中。 | 
| collapse | 設定廣告版位的收合行為。 | 
| disable | 設定廣告請求時間。 | 
| lazy | 控制 GPT 中延遲載入功能的設定。 | 
| location | 設定指定地理區域,讓委刊項在特定地理位置放送。 | 
| pps | 控制發布商提供的信號 (PPS) 的設定。 | 
| privacy | 用來控管發布商隱私權處理方式的設定。 | 
| safe | 控制 GPT 中 SafeFrame 使用情形的設定。 | 
| single | 啟用或停用單一請求架構 (SRA) 的設定。 | 
| targeting | 用於控管指定鍵/值的設定。 | 
| thread | 這項設定可控管 GPT 在請求及顯示廣告素材時,是否應產生 JS 執行緒。 | 
| video | 控制影片廣告的設定。 | 
屬性
Optional adExpansion
adExpansion?: AdExpansionConfigOptional adsenseAttributes
adsenseAttributes?: AdSenseAttributesConfig透過這項設定設定的 AdSense 屬性,會套用至網頁上的所有廣告版位。這項設定可多次呼叫,用來定義多個屬性值,或覆寫現有值。
AdSense 屬性變更只會套用至呼叫這個方法後要求的廣告。因此,建議您在呼叫 googletag.display 或 PubAdsService.refresh 之前,先呼叫這個方法。
- 範例
- JavaScript- // Set the document language and page URL. googletag.setConfig({ adsenseAttributes: { document_language: "en", page_url: "http://www.example.com" }, }); // Clear the page URL only. googletag.setConfig({ adsenseAttributes: { page_url: null } }); // Clear all AdSense attributes. googletag.setConfig({ adsenseAttributes: null }); - JavaScript (舊版)- // Set the document language and page URL. googletag.setConfig({ adsenseAttributes: { document_language: "en", page_url: "http://www.example.com" }, }); // Clear the page URL only. googletag.setConfig({ adsenseAttributes: { page_url: null } }); // Clear all AdSense attributes. googletag.setConfig({ adsenseAttributes: null }); - TypeScript- // Set the document language and page URL. googletag.setConfig({ adsenseAttributes: { document_language: "en", page_url: "http://www.example.com" }, }); // Clear the page URL only. googletag.setConfig({ adsenseAttributes: { page_url: null } }); // Clear all AdSense attributes. googletag.setConfig({ adsenseAttributes: null }); 
Optional adYield
adYield?: "DISABLED" | "ENABLED_ALL_SLOTS"Optional categoryExclusion
categoryExclusion?: string[]- 範例
- JavaScript- // Label = AirlineAd. googletag.setConfig({ categoryExclusion: ["AirlineAd"] }); // Clearing category exclusion setting. googletag.setConfig({ categoryExclusion: null }); - JavaScript (舊版)- // Label = AirlineAd. googletag.setConfig({ categoryExclusion: ["AirlineAd"] }); // Clearing category exclusion setting. googletag.setConfig({ categoryExclusion: null }); - TypeScript- // Label = AirlineAd. googletag.setConfig({ categoryExclusion: ["AirlineAd"] }); // Clearing category exclusion setting. googletag.setConfig({ categoryExclusion: null }); 
- 另請參閱
Optional 置中
centering?: boolean水平置中變更只會套用至呼叫這個方法後要求的廣告。因此,建議您在呼叫 googletag.display 或 PubAdsService.refresh 之前,先呼叫這個方法。
- 範例
- JavaScript- // Make ads centered. googletag.setConfig({ centering: true }); // Clear the centering setting. googletag.setConfig({ centering: null }); - JavaScript (舊版)- // Make ads centered. googletag.setConfig({ centering: true }); // Clear the centering setting. googletag.setConfig({ centering: null }); - TypeScript- // Make ads centered. googletag.setConfig({ centering: true }); // Clear the centering setting. googletag.setConfig({ centering: null }); 
Optional collapseDiv
collapseDiv?: "DISABLED" | "BEFORE_FETCH" | "ON_NO_FILL"收合的廣告版位不會佔用網頁空間。
支援的值:
- null(預設):不會收合插槽。
- DISABLED:無論是否傳回廣告,版位都不會收合。
- BEFORE_FETCH:版位一開始會處於收合狀態,並在傳回廣告時展開。
- ON_NO_FILL:版位一開始會展開,如果沒有傳回廣告,就會收合。
- 範例
- JavaScript- // Collapse the div for this slot if no ad is returned. googletag.setConfig({ collapseDiv: "ON_NO_FILL" }); // Collapse the div for this slot by default, and expand only // if an ad is returned. googletag.setConfig({ collapseDiv: "BEFORE_FETCH" }); // Do not collapse the div for this slot. googletag.setConfig({ collapseDiv: "DISABLED" }); // Clear the collapse setting. googletag.setConfig({ collapseDiv: null }); - JavaScript (舊版)- // Collapse the div for this slot if no ad is returned. googletag.setConfig({ collapseDiv: "ON_NO_FILL" }); // Collapse the div for this slot by default, and expand only // if an ad is returned. googletag.setConfig({ collapseDiv: "BEFORE_FETCH" }); // Do not collapse the div for this slot. googletag.setConfig({ collapseDiv: "DISABLED" }); // Clear the collapse setting. googletag.setConfig({ collapseDiv: null }); - TypeScript- // Collapse the div for this slot if no ad is returned. googletag.setConfig({ collapseDiv: "ON_NO_FILL" }); // Collapse the div for this slot by default, and expand only // if an ad is returned. googletag.setConfig({ collapseDiv: "BEFORE_FETCH" }); // Do not collapse the div for this slot. googletag.setConfig({ collapseDiv: "DISABLED" }); // Clear the collapse setting. googletag.setConfig({ collapseDiv: null }); 
Optional disableInitialLoad
disableInitialLoad?: boolean根據預設,googletag.display 方法會註冊廣告版位,並為這些版位請求廣告。不過,有時您可能希望將這些動作分開,以便更精確地控制廣告內容的載入時間。
啟用這項設定後,系統會在呼叫
display() 方法時,不會為已註冊的廣告空間要求廣告。您必須另外呼叫 PubAdsService.refresh,才能啟動廣告請求。呼叫 googletag.enableServices 前,必須先呼叫這個方法。
- 範例
- JavaScript- // Prevent requesting ads when `display()` is called. googletag.setConfig({ disableInitialLoad: true }); - JavaScript (舊版)- // Prevent requesting ads when `display()` is called. googletag.setConfig({ disableInitialLoad: true }); - TypeScript- // Prevent requesting ads when `display()` is called. googletag.setConfig({ disableInitialLoad: true }); 
- 另請參閱
Optional lazyLoad
lazyLoad?: LazyLoadConfig延遲載入技術可延遲廣告請求和顯示,直到廣告接近使用者的可視區域為止。如需更詳細的範例,請參閱延遲載入範例。
注意:如果啟用
singleRequest,只有在所有廣告空間都位於擷取邊界外時,延遲擷取才會運作。呼叫
setConfig() 時,如果未指定任何延遲載入設定,系統會使用 Google 設定的預設值。這些預設值可能會隨時間調整。如要停用特定設定,請將值設為 null。- 範例
- JavaScript- // Enable lazy loading. googletag.setConfig({ lazyLoad: { // Fetch slots within 5 viewports. fetchMarginPercent: 500, // Render slots within 2 viewports. renderMarginPercent: 200, // Double the above values on mobile. mobileScaling: 2.0, }, }); // Clear fetch margin only. googletag.setConfig({ lazyLoad: { fetchMarginPercent: null }, }); // Clear all lazy loading settings. googletag.setConfig({ lazyLoad: null }); - JavaScript (舊版)- // Enable lazy loading. googletag.setConfig({ lazyLoad: { // Fetch slots within 5 viewports. fetchMarginPercent: 500, // Render slots within 2 viewports. renderMarginPercent: 200, // Double the above values on mobile. mobileScaling: 2.0, }, }); // Clear fetch margin only. googletag.setConfig({ lazyLoad: { fetchMarginPercent: null }, }); // Clear all lazy loading settings. googletag.setConfig({ lazyLoad: null }); - TypeScript- // Enable lazy loading. googletag.setConfig({ lazyLoad: { // Fetch slots within 5 viewports. fetchMarginPercent: 500, // Render slots within 2 viewports. renderMarginPercent: 200, // Double the above values on mobile. mobileScaling: 2.0, }, }); // Clear fetch margin only. googletag.setConfig({ lazyLoad: { fetchMarginPercent: null }, }); // Clear all lazy loading settings. googletag.setConfig({ lazyLoad: null }); 
- 另請參閱
Optional location
location?: string- 範例
- JavaScript- // Geo-target line items to US postal code 10001. googletag.setConfig({ location: "10001,US" }); // Clear the location setting. googletag.setConfig({ location: null }); - JavaScript (舊版)- // Geo-target line items to US postal code 10001. googletag.setConfig({ location: "10001,US" }); // Clear the location setting. googletag.setConfig({ location: null }); - TypeScript- // Geo-target line items to US postal code 10001. googletag.setConfig({ location: "10001,US" }); // Clear the location setting. googletag.setConfig({ location: null }); 
- 另請參閱
Optional pps
控制發布商提供的信號 (PPS) 的設定。
Optional privacyTreatments
privacyTreatments?: PrivacyTreatmentsConfigOptional safeFrame
safeFrame?: SafeFrameConfig透過這項設定設定的值會套用至網頁上的所有廣告版位。個別廣告版位可能會透過 SlotSettingsConfig.safeFrame 覆寫這些值。
- 範例
- JavaScript- // Force SafeFrame for all ads on the page. googletag.setConfig({ safeFrame: { forceSafeFrame: true }, }); // Configure SafeFrame to allow overlay expansion. googletag.setConfig({ safeFrame: { allowOverlayExpansion: true }, }); // Clear forceSafeFrame setting. googletag.setConfig({ safeFrame: { forceSafeFrame: null }, }); // Clear all SafeFrame settings. googletag.setConfig({ safeFrame: null }); - JavaScript (舊版)- // Force SafeFrame for all ads on the page. googletag.setConfig({ safeFrame: { forceSafeFrame: true }, }); // Configure SafeFrame to allow overlay expansion. googletag.setConfig({ safeFrame: { allowOverlayExpansion: true }, }); // Clear forceSafeFrame setting. googletag.setConfig({ safeFrame: { forceSafeFrame: null }, }); // Clear all SafeFrame settings. googletag.setConfig({ safeFrame: null }); - TypeScript- // Force SafeFrame for all ads on the page. googletag.setConfig({ safeFrame: { forceSafeFrame: true }, }); // Configure SafeFrame to allow overlay expansion. googletag.setConfig({ safeFrame: { allowOverlayExpansion: true }, }); // Clear forceSafeFrame setting. googletag.setConfig({ safeFrame: { forceSafeFrame: null }, }); // Clear all SafeFrame settings. googletag.setConfig({ safeFrame: null }); 
Optional singleRequest
singleRequest?: boolean啟用 SRA 後,系統會將 googletag.display 或 PubAdsService.refresh 呼叫前定義的所有廣告版位,批次處理為單一廣告請求。這不僅能提升成效,也是確保路障型廣告和競爭排除條件能正常運作的必要條件。
如果停用 SRA,系統會個別請求每個廣告版位。這是 GPT 的預設行為。
呼叫 googletag.enableServices 前必須先呼叫這個方法。
- 範例
- JavaScript- // Enable Single Request Architecture. googletag.setConfig({ singleRequest: true }); - JavaScript (舊版)- // Enable Single Request Architecture. googletag.setConfig({ singleRequest: true }); - TypeScript- // Enable Single Request Architecture. googletag.setConfig({ singleRequest: true }); 
Optional targeting
targeting?: Record<string, string | string[]>透過這項設定指定的目標,會套用至網頁上的所有廣告版位。這個設定可能會多次呼叫,以定義多個指定目標鍵/值,或覆寫現有值。指定鍵是在 Google Ad Manager 帳戶中定義。
- 範例
- JavaScript- // Setting a single targeting key-value. googletag.setConfig({ targeting: { interests: "sports" } }); // Setting multiple values for a single targeting key googletag.setConfig({ targeting: { interests: ["sports", "music"] } }); // Setting multiple targeting key-values at once. googletag.setConfig({ targeting: { interests: ["sports", "music"], color: "red" } }); // Clearing a single targeting key. googletag.setConfig({ targeting: { interests: null } }); - JavaScript (舊版)- // Setting a single targeting key-value. googletag.setConfig({ targeting: { interests: "sports" } }); // Setting multiple values for a single targeting key googletag.setConfig({ targeting: { interests: ["sports", "music"] } }); // Setting multiple targeting key-values at once. googletag.setConfig({ targeting: { interests: ["sports", "music"], color: "red" } }); // Clearing a single targeting key. googletag.setConfig({ targeting: { interests: null } }); - TypeScript- // Setting a single targeting key-value. googletag.setConfig({ targeting: { interests: "sports" } }); // Setting multiple values for a single targeting key googletag.setConfig({ targeting: { interests: ["sports", "music"] } }); // Setting multiple targeting key-values at once. googletag.setConfig({ targeting: { interests: ["sports", "music"], color: "red" } }); // Clearing a single targeting key. googletag.setConfig({ targeting: { interests: null } }); 
- 另請參閱
Optional threadYield
threadYield?: "DISABLED" | "ENABLED_ALL_SLOTS"GPT 只會為支援 Scheduler.postTask 或 Scheduler.yield API 的瀏覽器產生執行緒。
支援的值:
- null(預設):GPT 會為可視區域外的廣告空間產生 JS 執行緒。
- ENABLED_ALL_SLOTS:無論版位是否位於可視區域內,GPT 都會為所有版位產生 JS 執行緒。
- DISABLED:GPT 不會產生 JS 執行緒。
- 範例
- JavaScript- // Disable yielding. googletag.setConfig({ threadYield: "DISABLED" }); // Enable yielding for all slots. googletag.setConfig({ threadYield: "ENABLED_ALL_SLOTS" }); // Enable yielding only for slots outside of the viewport (default). googletag.setConfig({ threadYield: null }); - JavaScript (舊版)- // Disable yielding. googletag.setConfig({ threadYield: "DISABLED" }); // Enable yielding for all slots. googletag.setConfig({ threadYield: "ENABLED_ALL_SLOTS" }); // Enable yielding only for slots outside of the viewport (default). googletag.setConfig({ threadYield: null }); - TypeScript- // Disable yielding. googletag.setConfig({ threadYield: "DISABLED" }); // Enable yielding for all slots. googletag.setConfig({ threadYield: "ENABLED_ALL_SLOTS" }); // Enable yielding only for slots outside of the viewport (default). googletag.setConfig({ threadYield: null }); 
- 另請參閱
Optional videoAds
videoAds?: VideoAdsConfig- 範例
- JavaScript- // Enable video ads and set video content and content source IDs. googletag.setConfig({ videoAds: { enableVideoAds: true, videoContentId: "e1eGlRL7ju8", videoCmsId: "1234567", }, }); - JavaScript (舊版)- // Enable video ads and set video content and content source IDs. googletag.setConfig({ videoAds: { enableVideoAds: true, videoContentId: "e1eGlRL7ju8", videoCmsId: "1234567", }, }); - TypeScript- // Enable video ads and set video content and content source IDs. googletag.setConfig({ videoAds: { enableVideoAds: true, videoContentId: "e1eGlRL7ju8", videoCmsId: "1234567", }, }); 
- 另請參閱
googletag.config.PrivacyTreatmentsConfig
用來控管發布商隱私權處理方式的設定。
| 屬性 | |
|---|---|
| treatments | 要啟用的發布商隱私權處理方式陣列。 | 
屬性
治療方式
treatments: "disablePersonalization"[]- 範例
- JavaScript- // Disable personalization across the entire page. googletag.setConfig({ privacyTreatments: { treatments: ["disablePersonalization"] }, }); - JavaScript (舊版)- // Disable personalization across the entire page. googletag.setConfig({ privacyTreatments: { treatments: ["disablePersonalization"] }, }); - TypeScript- // Disable personalization across the entire page. googletag.setConfig({ privacyTreatments: { treatments: ["disablePersonalization"] }, }); 
googletag.config.PublisherProvidedSignalsConfig
發布商提供的信號 (PPS) 設定物件。
| 屬性 | |
|---|---|
| taxonomies | 包含 Taxonomy 對應項的物件,或用於清除設定的空值。 | 
- 範例
- JavaScript- googletag.setConfig({ pps: { taxonomies: { IAB_AUDIENCE_1_1: { values: ["6", "626"] }, // '6' = 'Demographic | Age Range | 30-34' // '626' = 'Interest | Sports | Darts' IAB_CONTENT_2_2: { values: ["48", "127"] }, // '48' = 'Books and Literature | Fiction' // '127' = 'Careers | Job Search' }, }, }); - JavaScript (舊版)- googletag.setConfig({ pps: { taxonomies: { IAB_AUDIENCE_1_1: { values: ["6", "626"] }, // '6' = 'Demographic | Age Range | 30-34' // '626' = 'Interest | Sports | Darts' IAB_CONTENT_2_2: { values: ["48", "127"] }, // '48' = 'Books and Literature | Fiction' // '127' = 'Careers | Job Search' }, }, }); - TypeScript- googletag.setConfig({ pps: { taxonomies: { IAB_AUDIENCE_1_1: { values: ["6", "626"] }, // '6' = 'Demographic | Age Range | 30-34' // '626' = 'Interest | Sports | Darts' IAB_CONTENT_2_2: { values: ["48", "127"] }, // '48' = 'Books and Literature | Fiction' // '127' = 'Careers | Job Search' }, }, }); 
屬性
分類
taxonomies: Partial<Record<Taxonomy, TaxonomyData>>googletag.config.SafeFrameConfig
在 GPT 中控管 SafeFrame 的設定。
| 屬性 | |
|---|---|
| allow | SafeFrame 是否應允許廣告內容透過疊加網頁內容的方式展開。 | 
| allow | SafeFrame 是否應允許廣告內容擴展,並將網頁內容往外推。 | 
| force | 是否應強制使用 SafeFrame 容器顯示廣告。 | 
| sandbox | SafeFrame 是否應使用 HTML5 sandbox 屬性,禁止在沒有使用者互動的情況下進行頂層導覽。 | 
| use | 已淘汰。 SafeFrame 是否應為預訂廣告素材使用隨機子網域。 | 
屬性
Optional allowOverlayExpansion
allowOverlayExpansion?: booleanOptional allowPushExpansion
allowPushExpansion?: booleanOptional forceSafeFrame
forceSafeFrame?: booleanOptional sandbox
sandbox?: booleantrue (無法強制設為 false)。請注意,沙箱屬性會停用外掛程式 (例如 Flash)。Optional useUniqueDomain
useUniqueDomain?: booleannull 可清除儲存的值。注意:這項功能預設為啟用。
googletag.config.SlotSettingsConfig
設定廣告空間層級設定的主要介面。
可透過單一 API 呼叫,為單一廣告空間設定多項功能。
以下列出的所有屬性都是範例,並未反映實際使用 setConfig 的功能。如需功能組合,請參閱下方的 SlotSettingsConfig 類型中的欄位。
範例:
可透過單一 API 呼叫,為單一廣告空間設定多項功能。
以下列出的所有屬性都是範例,並未反映實際使用 setConfig 的功能。如需功能組合,請參閱下方的 SlotSettingsConfig 類型中的欄位。
範例:
- 系統只會修改 Slot.setConfig 呼叫中指定的特徵。const slot = googletag.defineSlot("/1234567/example", [160, 600]); // Configure feature alpha. slot.setConfig({ alpha: {...} }); // Configure feature bravo. Feature alpha is unchanged. slot.setConfig({ bravo: {...} }); 
- 每次呼叫 Slot.setConfig 時,系統都會更新特定功能的設定。// Configure feature charlie to echo = 1, foxtrot = true. slot.setConfig({ charlie: { echo: 1, foxtrot: true, } }); // Update feature charlie to echo = 2. Since foxtrot was not specified, // the value is cleared. slot.setConfig({ charlie: { echo: 2 } }); 
- 如要清除某項功能的所有設定,請傳遞 null。// Configure features delta, golf, and hotel. slot.setConfig({ delta: {...}, golf: {...}, hotel: {...}, }); // Feature delta and hotel are cleared, but feature golf remains set. slot.setConfig({ delta: null, hotel: null, }); 
| 屬性 | |
|---|---|
| ad | 設定廣告擴展功能。 | 
| adsense | 設定 AdSense 屬性。 | 
| category | 設定廣告類別排除條件。 | 
| click | 設定使用者點按廣告後重新導向的網址。 | 
| collapse | 設定,用於設定廣告空間的收合行為。 | 
| component | 要納入裝置端廣告競價的元件競價陣列。 | 
| interstitial | 設定插頁式廣告空間行為的設定。 | 
| safe | 設定在 GPT 中使用 SafeFrame。 | 
| targeting | 用於設定鍵/值指定目標的設定。 | 
屬性
Optional adExpansion
adExpansion?: AdExpansionConfig- 另請參閱
Optional adsenseAttributes
adsenseAttributes?: AdSenseAttributesConfig透過這項設定設定的 AdSense 屬性只會套用至廣告空間。這項設定可多次呼叫,用來定義多個屬性值,或覆寫現有值。
AdSense 屬性變更只會套用至呼叫這個方法後要求的廣告。因此,建議您在呼叫 googletag.display 或 PubAdsService.refresh 之前,先呼叫這個方法。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Set the AdSense ad format and channel IDs. slot.setConfig({ adsenseAttributes: { adsense_ad_format: "120x240_as", adsense_channel_ids: "271828183+314159265", }, }); // Clear the AdSense channel IDs only. slot.setConfig({ adsenseAttributes: { adsense_channel_ids: null } }); // Clear all AdSense attributes. slot.setConfig({ adsenseAttributes: null }); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Set the AdSense ad format and channel IDs. slot.setConfig({ adsenseAttributes: { adsense_ad_format: "120x240_as", adsense_channel_ids: "271828183+314159265", }, }); // Clear the AdSense channel IDs only. slot.setConfig({ adsenseAttributes: { adsense_channel_ids: null } }); // Clear all AdSense attributes. slot.setConfig({ adsenseAttributes: null }); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Set the AdSense ad format and channel IDs. slot.setConfig({ adsenseAttributes: { adsense_ad_format: "120x240_as", adsense_channel_ids: "271828183+314159265", }, }); // Clear the AdSense channel IDs only. slot.setConfig({ adsenseAttributes: { adsense_channel_ids: null } }); // Clear all AdSense attributes. slot.setConfig({ adsenseAttributes: null }); 
Optional categoryExclusion
categoryExclusion?: string[]- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Label = AirlineAd slot.setConfig({ categoryExclusion: ["AirlineAd"], }); // Clearing category exclusion setting. slot.setConfig({ categoryExclusion: null }); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Label = AirlineAd slot.setConfig({ categoryExclusion: ["AirlineAd"], }); // Clearing category exclusion setting. slot.setConfig({ categoryExclusion: null }); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Label = AirlineAd slot.setConfig({ categoryExclusion: ["AirlineAd"], }); // Clearing category exclusion setting. slot.setConfig({ categoryExclusion: null }); 
- 另請參閱
Optional clickUrl
clickUrl?: string即使點擊網址遭到取代,Google Ad Manager 伺服器仍會記錄點擊。系統會將與放送廣告素材相關聯的任何到達網頁網址,附加至提供的值。如果多次設定這個值,系統會覆寫先前設定的值。傳入
null 會清除值。注意:這項設定僅適用於非 SRA 要求。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Sets the click URL to 'http://www.example.com?original_click_url='. slot.setConfig({ clickUrl: "http://www.example.com?original_click_url=", }); // Clears the click URL. slot.setConfig({ clickUrl: null, }); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Sets the click URL to 'http://www.example.com?original_click_url='. slot.setConfig({ clickUrl: "http://www.example.com?original_click_url=", }); // Clears the click URL. slot.setConfig({ clickUrl: null, }); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Sets the click URL to 'http://www.example.com?original_click_url='. slot.setConfig({ clickUrl: "http://www.example.com?original_click_url=", }); // Clears the click URL. slot.setConfig({ clickUrl: null, }); 
Optional collapseDiv
collapseDiv?: "DISABLED" | "BEFORE_FETCH" | "ON_NO_FILL"收合的廣告版位不會佔用網頁空間。
支援的值:
- null(預設):不會收合插槽。
- DISABLED:無論是否傳回廣告,版位都不會收合。
- BEFORE_FETCH:版位一開始會處於收合狀態,並在傳回廣告時展開。
- ON_NO_FILL:版位一開始會展開,如果沒有傳回廣告,就會收合。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Collapse the div for this slot if no ad is returned. slot.setConfig({ collapseDiv: "ON_NO_FILL", }); // Collapse the div for this slot by default, and expand only // if an ad is returned. slot.setConfig({ collapseDiv: "BEFORE_FETCH", }); // Do not collapse the div for this slot. slot.setConfig({ collapseDiv: "DISABLED", }); // Clear the collapse setting. slot.setConfig({ collapseDiv: null, }); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Collapse the div for this slot if no ad is returned. slot.setConfig({ collapseDiv: "ON_NO_FILL", }); // Collapse the div for this slot by default, and expand only // if an ad is returned. slot.setConfig({ collapseDiv: "BEFORE_FETCH", }); // Do not collapse the div for this slot. slot.setConfig({ collapseDiv: "DISABLED", }); // Clear the collapse setting. slot.setConfig({ collapseDiv: null, }); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Collapse the div for this slot if no ad is returned. slot.setConfig({ collapseDiv: "ON_NO_FILL", }); // Collapse the div for this slot by default, and expand only // if an ad is returned. slot.setConfig({ collapseDiv: "BEFORE_FETCH", }); // Do not collapse the div for this slot. slot.setConfig({ collapseDiv: "DISABLED", }); // Clear the collapse setting. slot.setConfig({ collapseDiv: null, }); 
Optional componentAuction
componentAuction?: ComponentAuctionConfig[]Optional interstitial
interstitial?: InterstitialConfig- 另請參閱
Optional safeFrame
safeFrame?: SafeFrameConfig透過這項設定設定的值只會套用至廣告版位,並覆寫透過 PageSettingsConfig.safeFrame 設定的值。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Force SafeFrame for the slot. slot.setConfig({ safeFrame: { forceSafeFrame: true }, }); // Configure SafeFrame to allow overlay expansion for the slot. slot.setConfig({ safeFrame: { allowOverlayExpansion: true }, }); // Clear forceSafeFrame setting for the slot. slot.setConfig({ safeFrame: { forceSafeFrame: null }, }); // Clear all SafeFrame settings for the slot. slot.setConfig({ safeFrame: null }); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Force SafeFrame for the slot. slot.setConfig({ safeFrame: { forceSafeFrame: true }, }); // Configure SafeFrame to allow overlay expansion for the slot. slot.setConfig({ safeFrame: { allowOverlayExpansion: true }, }); // Clear forceSafeFrame setting for the slot. slot.setConfig({ safeFrame: { forceSafeFrame: null }, }); // Clear all SafeFrame settings for the slot. slot.setConfig({ safeFrame: null }); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Force SafeFrame for the slot. slot.setConfig({ safeFrame: { forceSafeFrame: true }, }); // Configure SafeFrame to allow overlay expansion for the slot. slot.setConfig({ safeFrame: { allowOverlayExpansion: true }, }); // Clear forceSafeFrame setting for the slot. slot.setConfig({ safeFrame: { forceSafeFrame: null }, }); // Clear all SafeFrame settings for the slot. slot.setConfig({ safeFrame: null }); 
Optional targeting
targeting?: Record<string, string | string[]>透過這項設定指定的目標只會套用至廣告版位。這個設定可能會多次呼叫,以定義多個指定目標鍵/值,或覆寫現有值。指定鍵是在 Google Ad Manager 帳戶中定義。
- 範例
- JavaScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Setting a single targeting key-value. slot.setConfig({ targeting: { interests: "sports" } }); // Setting multiple values for a single targeting key. slot.setConfig({ targeting: { interests: ["sports", "music"] } }); // Setting multiple targeting key-values at once. slot.setConfig({ targeting: { interests: ["sports", "music"], color: "red" } }); // Clearing a single targeting key. slot.setConfig({ targeting: { interests: null } }); // Clear all targeting keys. slot.setConfig({ targeting: null }); - JavaScript (舊版)- var slot = googletag .defineSlot("/1234567/sports", [160, 600], "div") .addService(googletag.pubads()); // Setting a single targeting key-value. slot.setConfig({ targeting: { interests: "sports" } }); // Setting multiple values for a single targeting key. slot.setConfig({ targeting: { interests: ["sports", "music"] } }); // Setting multiple targeting key-values at once. slot.setConfig({ targeting: { interests: ["sports", "music"], color: "red" } }); // Clearing a single targeting key. slot.setConfig({ targeting: { interests: null } }); // Clear all targeting keys. slot.setConfig({ targeting: null }); - TypeScript- const slot = googletag .defineSlot("/1234567/sports", [160, 600], "div")! .addService(googletag.pubads()); // Setting a single targeting key-value. slot.setConfig({ targeting: { interests: "sports" } }); // Setting multiple values for a single targeting key. slot.setConfig({ targeting: { interests: ["sports", "music"] } }); // Setting multiple targeting key-values at once. slot.setConfig({ targeting: { interests: ["sports", "music"], color: "red" } }); // Clearing a single targeting key. slot.setConfig({ targeting: { interests: null } }); // Clear all targeting keys. slot.setConfig({ targeting: null }); 
- 另請參閱
googletag.config.TaxonomyData
| 屬性 | |
|---|---|
| values | 分類值清單。 | 
屬性
值
values: readonly string[]googletag.config.VideoAdsConfig
設定:設定影片廣告相關設定。
| 屬性 | |
|---|---|
| enable | 網頁上是否會顯示影片廣告。 | 
| video | 影片內容來源 ID。 | 
| video | 影片內容 ID。 | 
屬性
enableVideoAds
enableVideoAds: boolean設為
true 時,系統會對多媒體和影片廣告啟用內容排除限制。如果知道影片內容,請將 videoContentId 和 videoCmsId 設為提供給 Google Ad Manager 內容擷取服務的值,以便對多媒體廣告套用內容排除條件。
Optional videoCmsId
Optional videoContentId
googletag.enums
這是 GPT 用於列舉型別的命名空間。
| 列舉 | |
|---|---|
| Out | GPT 支援的非頁內廣告格式。 | 
| Traffic | GPT 支援的流量來源。 | 
列舉
OutOfPageFormat
TrafficSource
googletag.events
這是 GPT 用於事件的命名空間。您的程式碼可以使用 Service.addEventListener 回應這些事件。
| 介面 | |
|---|---|
| Event | 所有 GPT 事件的基礎介面。 | 
| Event | 這是偽類型,可將事件名稱對應至 Service.addEventListener 和 Service.removeEventListener 的對應事件物件類型。 | 
| Game | 使用者關閉遊戲手動插頁式廣告空間時,系統會觸發這個事件。 | 
| Game | 當手動插頁式遊戲廣告版位準備向使用者顯示時,系統會觸發這個事件。 | 
| Impression | 根據 Active View 條件,當曝光次數可視時,系統就會觸發這項事件。 | 
| Rewarded | 使用者關閉獎勵廣告版位時,系統會觸發這個事件。 | 
| Rewarded | 觀看獎勵廣告後獲得獎勵時,系統會觸發這個事件。 | 
| Rewarded | 當獎勵廣告準備好顯示時,就會觸發這個事件。 | 
| Slot | 當廣告素材的 iframe 觸發載入事件時,系統會觸發這個事件。 | 
| Slot | 廣告素材程式碼注入廣告空間時,系統會觸發這個事件。 | 
| Slot | 系統為特定版位請求廣告時,會觸發這個事件。 | 
| Slot | 收到特定廣告空間的廣告回應時,系統會觸發這個事件。 | 
| Slot | 每當廣告空間區域的螢幕顯示百分比變更時,系統就會觸發這個事件。 | 
googletag.events.Event
所有 GPT 事件的基本介面。下列所有 GPT 事件都會包含下列欄位。
| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 | 
| slot | 觸發事件的廣告空間。 | 
- 另請參閱
屬性
serviceName
serviceName: stringslot
slot: Slotgoogletag.events.EventTypeMap
這是偽類型,可將事件名稱對應至 Service.addEventListener 和 Service.removeEventListener 的對應事件物件類型。僅供參考和確保型別安全。
屬性
gameManualInterstitialSlotClosed
gameManualInterstitialSlotClosed: GameManualInterstitialSlotClosedEventgameManualInterstitialSlotReady
gameManualInterstitialSlotReady: GameManualInterstitialSlotReadyEventimpressionViewable
impressionViewable: ImpressionViewableEventrewardedSlotClosed
rewardedSlotClosed: RewardedSlotClosedEventrewardedSlotGranted
rewardedSlotGranted: RewardedSlotGrantedEventrewardedSlotReady
rewardedSlotReady: RewardedSlotReadyEventslotOnload
slotOnload: SlotOnloadEventslotRenderEnded
slotRenderEnded: SlotRenderEndedEventslotRequested
slotRequested: SlotRequestedEventslotResponseReceived
slotResponseReceived: SlotResponseReceivedslotVisibilityChanged
slotVisibilityChanged: SlotVisibilityChangedEventgoogletag.events.GameManualInterstitialSlotClosedEvent
延長 
Event| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- // This listener is called when a game manual interstitial slot is closed. const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL, ); // Slot returns null if the page or device does not support game manual interstitial ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); googletag.pubads().addEventListener("gameManualInterstitialSlotClosed", (event) => { const slot = event.slot; console.log("Game manual interstital slot", slot.getSlotElementId(), "is closed."); if (slot === targetSlot) { // Slot specific logic. } }); } - JavaScript (舊版)- // This listener is called when a game manual interstitial slot is closed. var targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL, ); // Slot returns null if the page or device does not support game manual interstitial ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); googletag.pubads().addEventListener("gameManualInterstitialSlotClosed", function (event) { var slot = event.slot; console.log("Game manual interstital slot", slot.getSlotElementId(), "is closed."); if (slot === targetSlot) { // Slot specific logic. } }); } - TypeScript- // This listener is called when a game manual interstitial slot is closed. const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL, ); // Slot returns null if the page or device does not support game manual interstitial ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); googletag.pubads().addEventListener("gameManualInterstitialSlotClosed", (event) => { const slot = event.slot; console.log("Game manual interstital slot", slot.getSlotElementId(), "is closed."); if (slot === targetSlot) { // Slot specific logic. } }); } 
- 另請參閱
googletag.events.GameManualInterstitialSlotReadyEvent
延長 
Event| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
| 方法 | |
|---|---|
| make | 向使用者顯示手動插頁式遊戲廣告。 | 
- 範例
- JavaScript- // This listener is called when a game manual interstitial slot is ready to // be displayed. const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL, ); // Slot returns null if the page or device does not support game manual interstitial ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); googletag.pubads().addEventListener("gameManualInterstitialSlotReady", (event) => { const slot = event.slot; console.log( "Game manual interstital slot", slot.getSlotElementId(), "is ready to be displayed.", ); // Replace with custom logic. const displayGmiAd = true; if (displayGmiAd) { event.makeGameManualInterstitialVisible(); } if (slot === targetSlot) { // Slot specific logic. } }); } - JavaScript (舊版)- // This listener is called when a game manual interstitial slot is ready to // be displayed. var targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL, ); // Slot returns null if the page or device does not support game manual interstitial ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); googletag.pubads().addEventListener("gameManualInterstitialSlotReady", function (event) { var slot = event.slot; console.log( "Game manual interstital slot", slot.getSlotElementId(), "is ready to be displayed.", ); // Replace with custom logic. var displayGmiAd = true; if (displayGmiAd) { event.makeGameManualInterstitialVisible(); } if (slot === targetSlot) { // Slot specific logic. } }); } - TypeScript- // This listener is called when a game manual interstitial slot is ready to // be displayed. const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL, ); // Slot returns null if the page or device does not support game manual interstitial ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); googletag.pubads().addEventListener("gameManualInterstitialSlotReady", (event) => { const slot = event.slot; console.log( "Game manual interstital slot", slot.getSlotElementId(), "is ready to be displayed.", ); // Replace with custom logic. const displayGmiAd = true; if (displayGmiAd) { event.makeGameManualInterstitialVisible(); } if (slot === targetSlot) { // Slot specific logic. } }); } 
- 另請參閱
方法
makeGameManualInterstitialVisible
makeGameManualInterstitialVisible(): void向使用者顯示手動插頁式遊戲廣告。
googletag.events.ImpressionViewableEvent
延長 
Event根據 Active View 條件,當曝光次數可視時,系統就會觸發這項事件。
| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- // This listener is called when an impression becomes viewable. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("impressionViewable", (event) => { const slot = event.slot; console.log("Impression for slot", slot.getSlotElementId(), "became viewable."); if (slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // This listener is called when an impression becomes viewable. var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("impressionViewable", function (event) { var slot = event.slot; console.log("Impression for slot", slot.getSlotElementId(), "became viewable."); if (slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // This listener is called when an impression becomes viewable. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("impressionViewable", (event) => { const slot = event.slot; console.log("Impression for slot", slot.getSlotElementId(), "became viewable."); if (slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
googletag.events.RewardedSlotClosedEvent
延長 
Event使用者關閉獎勵廣告版位時,系統會觸發這個事件。這項事件可能會在授予獎勵之前或之後觸發。如要判斷是否已授予獎勵,請改用 events.RewardedSlotGrantedEvent。
| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called when the user closes a rewarded ad slot. googletag.pubads().addEventListener("rewardedSlotClosed", (event) => { const slot = event.slot; console.log("Rewarded ad slot", slot.getSlotElementId(), "has been closed."); if (slot === targetSlot) { // Slot specific logic. } }); } - JavaScript (舊版)- var targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called when the user closes a rewarded ad slot. googletag.pubads().addEventListener("rewardedSlotClosed", function (event) { var slot = event.slot; console.log("Rewarded ad slot", slot.getSlotElementId(), "has been closed."); if (slot === targetSlot) { // Slot specific logic. } }); } - TypeScript- const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called when the user closes a rewarded ad slot. googletag.pubads().addEventListener("rewardedSlotClosed", (event) => { const slot = event.slot; console.log("Rewarded ad slot", slot.getSlotElementId(), "has been closed."); if (slot === targetSlot) { // Slot specific logic. } }); } 
googletag.events.RewardedSlotGrantedEvent
延長 
Event觀看獎勵廣告後獲得獎勵時,系統會觸發這個事件。如果使用者在符合獎勵授予條件前關閉廣告,系統就不會觸發這個事件。
| 屬性 | |
|---|---|
| payload | 包含所發放獎勵相關資訊的物件。 | 
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called whenever a reward is granted for a // rewarded ad. googletag.pubads().addEventListener("rewardedSlotGranted", (event) => { const slot = event.slot; console.group("Reward granted for slot", slot.getSlotElementId(), "."); // Log details of the reward. console.log("Reward type:", event.payload?.type); console.log("Reward amount:", event.payload?.amount); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); } - JavaScript (舊版)- var targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called whenever a reward is granted for a // rewarded ad. googletag.pubads().addEventListener("rewardedSlotGranted", function (event) { var _a, _b; var slot = event.slot; console.group("Reward granted for slot", slot.getSlotElementId(), "."); // Log details of the reward. console.log("Reward type:", (_a = event.payload) === null || _a === void 0 ? void 0 : _a.type); console.log( "Reward amount:", (_b = event.payload) === null || _b === void 0 ? void 0 : _b.amount, ); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); } - TypeScript- const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called whenever a reward is granted for a // rewarded ad. googletag.pubads().addEventListener("rewardedSlotGranted", (event) => { const slot = event.slot; console.group("Reward granted for slot", slot.getSlotElementId(), "."); // Log details of the reward. console.log("Reward type:", event.payload?.type); console.log("Reward amount:", event.payload?.amount); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); } 
屬性
payload
payload: RewardedPayloadgoogletag.events.RewardedSlotReadyEvent
延長 
Event當獎勵廣告準備好顯示時,就會觸發這個事件。發布商有責任在顯示廣告前,先向使用者提供觀看廣告的選項。
| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
| 方法 | |
|---|---|
| make | 顯示獎勵廣告。 | 
- 範例
- JavaScript- // This listener is called when a rewarded ad slot becomes ready to be // displayed. const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called whenever a reward is granted for a // rewarded ad. googletag.pubads().addEventListener("rewardedSlotReady", (event) => { const slot = event.slot; console.log("Rewarded ad slot", slot.getSlotElementId(), "is ready to be displayed."); // Replace with custom logic. const userHasConsented = true; if (userHasConsented) { event.makeRewardedVisible(); } if (slot === targetSlot) { // Slot specific logic. } }); } - JavaScript (舊版)- // This listener is called when a rewarded ad slot becomes ready to be // displayed. var targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called whenever a reward is granted for a // rewarded ad. googletag.pubads().addEventListener("rewardedSlotReady", function (event) { var slot = event.slot; console.log("Rewarded ad slot", slot.getSlotElementId(), "is ready to be displayed."); // Replace with custom logic. var userHasConsented = true; if (userHasConsented) { event.makeRewardedVisible(); } if (slot === targetSlot) { // Slot specific logic. } }); } - TypeScript- // This listener is called when a rewarded ad slot becomes ready to be // displayed. const targetSlot = googletag.defineOutOfPageSlot( "/1234567/example", googletag.enums.OutOfPageFormat.REWARDED, ); // Slot returns null if the page or device does not support rewarded ads. if (targetSlot) { targetSlot.addService(googletag.pubads()); // This listener is called whenever a reward is granted for a // rewarded ad. googletag.pubads().addEventListener("rewardedSlotReady", (event) => { const slot = event.slot; console.log("Rewarded ad slot", slot.getSlotElementId(), "is ready to be displayed."); // Replace with custom logic. const userHasConsented = true; if (userHasConsented) { event.makeRewardedVisible(); } if (slot === targetSlot) { // Slot specific logic. } }); } 
方法
makeRewardedVisible
makeRewardedVisible(): void顯示獎勵廣告。使用者同意觀看廣告後,才能呼叫這個方法。
googletag.events.SlotOnloadEvent
延長 
Event當廣告素材的 iframe 觸發載入事件時,系統會觸發這個事件。以同步顯示模式顯示 Rich Media 廣告時,系統不會使用 iframe,因此不會觸發 
SlotOnloadEvent。| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- // This listener is called when a creative iframe load event fires. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotOnload", (event) => { const slot = event.slot; console.log("Creative iframe for slot", slot.getSlotElementId(), "has loaded."); if (slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // This listener is called when a creative iframe load event fires. var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotOnload", function (event) { var slot = event.slot; console.log("Creative iframe for slot", slot.getSlotElementId(), "has loaded."); if (slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // This listener is called when a creative iframe load event fires. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotOnload", (event) => { const slot = event.slot; console.log("Creative iframe for slot", slot.getSlotElementId(), "has loaded."); if (slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
googletag.events.SlotRenderEndedEvent
延長 
Event當廣告素材程式碼注入廣告空間時,系統會觸發這個事件。這個事件會在擷取廣告素材的資源前發生,因此廣告素材可能尚未顯示。如要瞭解版位的所有廣告素材資源何時載入完成,請改用 events.SlotOnloadEvent。
| 屬性 | |
|---|---|
| advertiser | 所顯示廣告的廣告主 ID。 | 
| campaign | 所顯示廣告的廣告活動 ID。 | 
| company | 對已放送的候補廣告出價的公司 ID。 | 
| creative | 已算繪預訂廣告的廣告素材 ID。 | 
| creative | 已放送預訂廣告的廣告素材範本 ID。 | 
| is | 廣告是否為候補廣告。 | 
| is | 是否為該廣告空間傳回廣告。 | 
| label | 已淘汰。  | 
| line | 所放送預訂廣告的委刊項 ID。 | 
| response | 回應 ID 是廣告回應的專屬 ID。 | 
| service | 觸發事件的服務名稱。 沿用自「 | 
| size | 顯示所顯示廣告素材的像素大小。 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
| slot | 版位內容是否已隨顯示的廣告變更。 | 
| source | 已放送的預訂或候補廣告的廣告素材 ID。 | 
| source | 所顯示預訂或候補廣告的委刊項 ID。 | 
| yield | 用於放送備用廣告的收益群組 ID。 | 
- 範例
- JavaScript- // This listener is called when a slot has finished rendering. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotRenderEnded", (event) => { const slot = event.slot; console.group("Slot", slot.getSlotElementId(), "finished rendering."); // Log details of the rendered ad. console.log("Advertiser ID:", event.advertiserId); console.log("Campaign ID:", event.campaignId); console.log("Company IDs:", event.companyIds); console.log("Creative ID:", event.creativeId); console.log("Creative Template ID:", event.creativeTemplateId); console.log("Is backfill?:", event.isBackfill); console.log("Is empty?:", event.isEmpty); console.log("Line Item ID:", event.lineItemId); console.log("Size:", event.size); console.log("Slot content changed?", event.slotContentChanged); console.log("Source Agnostic Creative ID:", event.sourceAgnosticCreativeId); console.log("Source Agnostic Line Item ID:", event.sourceAgnosticLineItemId); console.log("Yield Group IDs:", event.yieldGroupIds); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // This listener is called when a slot has finished rendering. var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotRenderEnded", function (event) { var slot = event.slot; console.group("Slot", slot.getSlotElementId(), "finished rendering."); // Log details of the rendered ad. console.log("Advertiser ID:", event.advertiserId); console.log("Campaign ID:", event.campaignId); console.log("Company IDs:", event.companyIds); console.log("Creative ID:", event.creativeId); console.log("Creative Template ID:", event.creativeTemplateId); console.log("Is backfill?:", event.isBackfill); console.log("Is empty?:", event.isEmpty); console.log("Line Item ID:", event.lineItemId); console.log("Size:", event.size); console.log("Slot content changed?", event.slotContentChanged); console.log("Source Agnostic Creative ID:", event.sourceAgnosticCreativeId); console.log("Source Agnostic Line Item ID:", event.sourceAgnosticLineItemId); console.log("Yield Group IDs:", event.yieldGroupIds); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // This listener is called when a slot has finished rendering. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotRenderEnded", (event) => { const slot = event.slot; console.group("Slot", slot.getSlotElementId(), "finished rendering."); // Log details of the rendered ad. console.log("Advertiser ID:", event.advertiserId); console.log("Campaign ID:", event.campaignId); console.log("Company IDs:", event.companyIds); console.log("Creative ID:", event.creativeId); console.log("Creative Template ID:", event.creativeTemplateId); console.log("Is backfill?:", event.isBackfill); console.log("Is empty?:", event.isEmpty); console.log("Line Item ID:", event.lineItemId); console.log("Size:", event.size); console.log("Slot content changed?", event.slotContentChanged); console.log("Source Agnostic Creative ID:", event.sourceAgnosticCreativeId); console.log("Source Agnostic Line Item ID:", event.sourceAgnosticLineItemId); console.log("Yield Group IDs:", event.yieldGroupIds); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
屬性
advertiserId
campaignId
companyIds
creativeId
creativeTemplateId
isBackfill
isBackfill: booleantrue,否則為 false。isEmpty
isEmpty: booleantrue,否則為 false。labelIds
labelIds: number[]lineItemId
responseIdentifier
responseIdentifier: stringsize
size: string | number[][728, 90]。如果廣告版位為空白,值為 null。slotContentChanged
slotContentChanged: booleantrue,否則為 false。sourceAgnosticCreativeId
sourceAgnosticCreativeId: numbernull。sourceAgnosticLineItemId
sourceAgnosticLineItemId: numbernull。yieldGroupIds
googletag.events.SlotRequestedEvent
延長 
Event系統為特定版位請求廣告時,會觸發這個事件。
| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- // This listener is called when the specified service issues an ad // request for a slot. Each slot will fire this event, even though they // may be batched together in a single request if single request // architecture (SRA) is enabled. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotRequested", (event) => { const slot = event.slot; console.log("Slot", slot.getSlotElementId(), "has been requested."); if (slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // This listener is called when the specified service issues an ad // request for a slot. Each slot will fire this event, even though they // may be batched together in a single request if single request // architecture (SRA) is enabled. var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotRequested", function (event) { var slot = event.slot; console.log("Slot", slot.getSlotElementId(), "has been requested."); if (slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // This listener is called when the specified service issues an ad // request for a slot. Each slot will fire this event, even though they // may be batched together in a single request if single request // architecture (SRA) is enabled. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotRequested", (event) => { const slot = event.slot; console.log("Slot", slot.getSlotElementId(), "has been requested."); if (slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
googletag.events.SlotResponseReceived
延長 
Event收到特定廣告空間的廣告回應時,系統會觸發這個事件。
| 屬性 | |
|---|---|
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- // This listener is called when an ad response has been received // for a slot. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotResponseReceived", (event) => { const slot = event.slot; console.log("Ad response for slot", slot.getSlotElementId(), "received."); if (slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // This listener is called when an ad response has been received // for a slot. var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotResponseReceived", function (event) { var slot = event.slot; console.log("Ad response for slot", slot.getSlotElementId(), "received."); if (slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // This listener is called when an ad response has been received // for a slot. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotResponseReceived", (event) => { const slot = event.slot; console.log("Ad response for slot", slot.getSlotElementId(), "received."); if (slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
googletag.events.SlotVisibilityChangedEvent
延長 
Event每當廣告空間區域在畫面上的百分比變更時,系統就會觸發這個事件。事件會受到節流,觸發頻率不會超過每 200 毫秒一次。
| 屬性 | |
|---|---|
| in | 廣告可見區域的百分比。 | 
| service | 觸發事件的服務名稱。 沿用自「 | 
| slot | 觸發事件的廣告空間。 沿用自「 | 
- 範例
- JavaScript- // This listener is called whenever the on-screen percentage of an // ad slot's area changes. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotVisibilityChanged", (event) => { const slot = event.slot; console.group("Visibility of slot", slot.getSlotElementId(), "changed."); // Log details of the event. console.log("Visible area:", `${event.inViewPercentage}%`); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); - JavaScript (舊版)- // This listener is called whenever the on-screen percentage of an // ad slot's area changes. var targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotVisibilityChanged", function (event) { var slot = event.slot; console.group("Visibility of slot", slot.getSlotElementId(), "changed."); // Log details of the event. console.log("Visible area:", "".concat(event.inViewPercentage, "%")); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); - TypeScript- // This listener is called whenever the on-screen percentage of an // ad slot's area changes. const targetSlot = googletag.defineSlot("/1234567/example", [160, 600]); googletag.pubads().addEventListener("slotVisibilityChanged", (event) => { const slot = event.slot; console.group("Visibility of slot", slot.getSlotElementId(), "changed."); // Log details of the event. console.log("Visible area:", `${event.inViewPercentage}%`); console.groupEnd(); if (slot === targetSlot) { // Slot specific logic. } }); 
- 另請參閱
屬性
inViewPercentage
inViewPercentage: numbergoogletag.secureSignals
這是 GPT 用於管理安全信號的命名空間。
| 介面 | |
|---|---|
| Bidder | 傳回特定出價方的安全信號。 | 
| Publisher | 傳回特定發布商的安全信號。 | 
| Secure | 管理安全信號的介面。 | 
| 型別別名 | |
|---|---|
| Secure | 介面:為特定出價方或供應商傳回安全信號。 | 
型別別名
SecureSignalProvider
SecureSignalProvider: BidderSignalProvider | PublisherSignalProviderid 或 networkCode 其中一個,但不能兩者都提供。googletag.secureSignals.BidderSignalProvider
為特定出價方傳回安全信號。
出價方安全信號供應商包含 2 個部分:
出價方安全信號供應商包含 2 個部分:
- 收集器函式,會傳回解析為安全信號的 Promise。
- id:用於識別與信號相關聯的出價方。
| 屬性 | |
|---|---|
| collector | 這個函式會傳回  Promise,該函式會解析為安全信號。 | 
| id | 與這個安全信號相關聯的收集器專屬 ID,已在 Google Ad Manager 中註冊。 | 
- 範例
- JavaScript- // id is provided googletag.secureSignalProviders.push({ id: "collector123", collectorFunction: () => { // ...custom signal generation logic... return Promise.resolve("signal"); }, }); - JavaScript (舊版)- // id is provided googletag.secureSignalProviders.push({ id: "collector123", collectorFunction: function () { // ...custom signal generation logic... return Promise.resolve("signal"); }, }); - TypeScript- // id is provided googletag.secureSignalProviders!.push({ id: "collector123", collectorFunction: () => { // ...custom signal generation logic... return Promise.resolve("signal"); }, }); 
- 另請參閱
屬性
collectorFunction
collectorFunction: (() => Promise<string>)Promise,該函式會解析為安全信號。id
id: stringgoogletag.secureSignals.PublisherSignalProvider
傳回特定發布商的安全信號。
發布商信號供應商包含 2 個部分:
發布商信號供應商包含 2 個部分:
- 收集器函式,會傳回解析為安全信號的 Promise。
- networkCode,用於識別與信號相關聯的發布商。
| 屬性 | |
|---|---|
| collector | 這個函式會傳回  Promise,該函式會解析為安全信號。 | 
| network | 與這個安全信號相關聯的發布商網路代碼 (如廣告單元路徑所示)。 | 
- 範例
- JavaScript- // networkCode is provided googletag.secureSignalProviders.push({ networkCode: "123456", collectorFunction: () => { // ...custom signal generation logic... return Promise.resolve("signal"); }, }); - JavaScript (舊版)- // networkCode is provided googletag.secureSignalProviders.push({ networkCode: "123456", collectorFunction: function () { // ...custom signal generation logic... return Promise.resolve("signal"); }, }); - TypeScript- // networkCode is provided googletag.secureSignalProviders!.push({ networkCode: "123456", collectorFunction: () => { // ...custom signal generation logic... return Promise.resolve("signal"); }, }); 
- 另請參閱
屬性
collectorFunction
collectorFunction: (() => Promise<string>)Promise,該函式會解析為安全信號。networkCode
networkCode: stringgoogletag.secureSignals.SecureSignalProvidersArray
管理安全信號的介面。
| 方法 | |
|---|---|
| clear | 清除所有收集器在快取中的所有信號。 | 
| push | 將新的 secureSignals.SecureSignalProvider 新增至信號供應商陣列,並開始信號產生程序。 | 
方法
clearAllCache
clearAllCache(): void清除快取中所有收集器的所有信號。
呼叫這個方法後,廣告請求含有目前和日後潛在網頁瀏覽信號的可能性也許會降低。因此,建議只在狀態出現重要變化時,才呼叫這個方法,例如:發生表示有新使用者的事件時 (登入、登出和註冊等)。
呼叫這個方法後,廣告請求含有目前和日後潛在網頁瀏覽信號的可能性也許會降低。因此,建議只在狀態出現重要變化時,才呼叫這個方法,例如:發生表示有新使用者的事件時 (登入、登出和註冊等)。
推入
push(provider: SecureSignalProvider): void將新的 secureSignals.SecureSignalProvider 新增至信號供應商陣列,並開始信號產生程序。
| 參數 | |
|---|---|
| provider: SecureSignalProvider | 要新增至陣列的 secureSignals.SecureSignalProvider 物件。 |