本文件說明代碼管理工具參數物件的用途和表示法。
簡介
您可以運用 Tag Manager API 建立及管理代碼管理工具資源,例如標記、規則和巨集。
大多數的標記和巨集類型都有標記或巨集專用的其他參數,您可以在建立/更新資源時設定。每個標記和巨集類型的參數清單 (key
、type
組合) 列於標記字典參考資料和巨集字典參考資料中。
如要設定這些標記或巨集專用的參數,系統會定義參數物件,並將其設為標記或
巨集資源的 parameter
屬性值。
參數物件
下列物件代表參數物件:
[ { "type": string, "key": string, "value": string, "list": [ (Parameter) ], "map": [ (Parameter) ] } ]
type
所設定的代碼或巨集的參數類型。
type
屬性會判斷是否需要在參數物件中加入 value
、list
或 map
屬性,如下表所示。
舉例來說,如果 type
設為 boolean
,則參數物件中應包含 value
屬性,並設為 true
或 false
。
值 | 其他要納入的屬性 | 如何設定其他資源 |
---|---|---|
template |
value |
value 是任何字串,包括巨集參照,例如 foo{{bar}} 。 |
boolean |
value |
value 是 true 或 false 。 |
number |
value |
value 為整數。 |
list |
list |
list 會包含零或多個參數,順序可能並不重要;系統會忽略 list 中任何參數的 key 。 |
map |
map |
map 會包含零或多個參數,順序無關緊要;map 中任何參數的 key 都不得重複。 |
key
所設定的代碼或巨集的參數鍵。
key
欄位可用來識別要設定的特定標記或巨集的參數。所有參數類型都需要 key
屬性 (list
參數除外)。
範例
自訂 HTML 代碼的參數物件,其中包含一個 template
類型參數和兩個 boolean
類型參數:
"parameter": [ { "key": "html", "type": "template", "value": "<script>alert('hello world')</script>" }, { "key": "supportDocumentWrite", "type": "boolean", "value": "false" } ]
對照表巨集的參數物件,其中包含兩個 template
類型參數和一個 list
類型參數:
"parameter": [ { "type": "template", "key": "input", "value": "{{event}}" }, { "type": "list", "key": "map", "list": [ { "type": "map", "map": [ { "type": "template", "key": "key", "value": "EventEqualsThis" }, { "type": "template", "key": "value", "value": "ThenSetToThis" } ] } ] }, { "type": "template", "key": "defaultValue", "value": "MyDefaultValue" } ]
函式呼叫標記的參數物件,其中包含一個 template
類型參數和一個 map
類型參數:
"parameter": [ { "key": "functionName", "type": "template", "value": "fn" }, { "key": "functionArgument", "map": [ { "key": "argkey1", "type": "template", "value": "argval1" } ], "type": "map" } ]