在制作效果最大化广告系列之前,请务必先导入您计划在广告系列中使用的所有素材资源。您可以随时返回并稍后添加素材资源,但必须先添加一组素材资源,才能开始。
在规划广告系列时,请了解效果最大化广告系列的素材资源和素材资源要求。
由于文字素材资源和图片素材资源是主要的必需素材资源类型,因此本指南将介绍如何上传这两种素材资源。这些原则也可以扩展到其他素材资源类型。无论您要制作哪种类型的素材资源,都可以使用 AssetOperation
进行创建。
您可以使用 AdsApp
创建素材资源,而无需使用 mutate,但为了保持一致性,本指南将采用与所有其他操作相同的方式来创建素材资源。请注意,如果您已经有现有素材资源,则可以并应重复使用这些素材资源。因此,虽然您必须拥有素材资源才能制作效果最大化广告系列,但您不一定必须在广告系列制作流程中创建这些素材资源。
文字素材资源
文本素材资源的运作方式与任何其他操作一样。如果您是在广告系列制作流程中上传素材资源,请使用临时 ID。否则,请记下返回的资源名称,以便在日后需要引用资源将其添加到素材资源组时使用。
const textAsset = {
"assetOperation": {
"create": {
"resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
"textAsset": {
"text": "Travel the World"
}
}
}
}
operations.push(textAsset);
图片素材资源
图片素材资源以 base-64 编码格式上传。由于您无法直接将图片上传到 Google Ads 脚本中,因此可以选择两种不同的方法来获取图片数据并对其进行编码以进行上传。
如需从 Google 云端硬盘提取图片,您首先需要获取其 ID,这是唯一标识图片的最佳方式。获取 ID 的一种方法是从 Google 云端硬盘界面复制可分享的链接,然后提取 ID。您还可以通过编程方式提取一系列文件,然后选择要上传的文件。以下代码演示了如何上传具有已知 ID 的单张图片:
const file = DriveApp.getFileById(fileId);
const imageAsset = {
"assetOperation": {
"create": {
"resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
"name": "Marketing Logo",
"type": "IMAGE",
"imageAsset": {
"data": Utilities.base64Encode(file.getBlob().getBytes())
}
}
}
}
或者,您也可以使用 UrlFetchApp
通过网址提取托管在网络服务器上的图片:
const file = UrlFetchApp.fetch(imageUrl);
然后,您可以像对云端硬盘文件一样对此文件调用 getBlob
,因此操作构建与 Google 云端硬盘文件的步骤相同。