下列各節顯示針對行銷活動執行各種動作的指令碼範例。
注意事項
不支援使用指令碼管理最高成效廣告活動。
取得所有廣告活動
若要取得帳戶中的所有廣告活動,請先呼叫 AdsApp 物件的方法 campaigns 來取得 選取器。 接著,呼叫選取器的方法, get 取得反覆運算 器 ,用來逐一查看廣告活動清單。 由於範例未指定任何篩選條件,選取器會傳回帳戶中的所有廣告活動。 若要判斷反覆運算器中的行銷活動數目,請呼叫反覆運算器的方法 totalNumEntities 。
function main() {
// Gets all campaigns in the account.
var iterator = AdsApp.campaigns().get();
// Iterates through the list of campaigns and logs
// each campaign's name.
while (iterator.hasNext()) {
var campaign = iterator.next();
}
}
依名稱取得廣告活動
若要依名稱取得廣告活動,請先呼叫 AdsApp 物件的方法 campaigns 來取得 選取器。 選取器包含許多篩選方法,可用來篩選行銷活動清單。 使用此方法可 withCondition 篩選特定廣告活動名稱的廣告活動。 請注意,運算元和運算子會區分大小寫。
接下來,呼叫選取器的方法 get 來取得 迭代器。 廣告活動名稱是獨一無二的,因此如果廣告活動名稱存在,您只會取回一個廣告活動名稱。
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var iterator = AdsApp.campaigns()
.withCondition(`Name = '${campaignName}'`)
.get();
while (iterator.hasNext()) {
var campaign = iterator.next();
}
}
依識別碼取得廣告活動
如果您有權存取廣告活動的 ID,請改用它。 使用 ID 獲取實體可提供更好的效能。 請使用withIds方法,而不是使用withCondition篩選方法。 例如,withIds(['12345'])。
function main() {
var campaignId = '12345';
var iterator = AdsApp.campaigns()
.withIds([campaignId])
.get();
while (iterator.hasNext()) {
var campaign = iterator.next();
}
}
取得廣告活動的成效資料
若要取得行銷活動的成效指標,請呼叫行銷活動的 getStats 方法。 取得行銷活動時,您必須指定所需量度資料的日期範圍。 您可以使用預先定義的常值指定日期範圍,例如 LAST_MONTH 或 TODAY,或使用開始和結束日期。 若要指定日期範圍,請在選取行銷活動時使用其中一個 forDateRange 方法 (請參閱 CampaignSelector) 。
如需您可以存取的計量清單,請參閱 Stats 物件。
function main() {
var campaignId = '12345';
// Get the campaign. You need to specify the date range of the
// performance data you want to get.
var iterator = AdsApp.campaigns()
.withIds([campaignId])
.forDateRange('LAST_WEEK')
.get();
// If the campaign is found, log some metrics.
while (iterator.hasNext()) {
var campaign = iterator.next();
var metrics = campaign.getStats(); // Gets the performance metrics.
}
}
暫停廣告活動
若要暫停行銷活動,請呼叫行銷活動的方法 pause 。 若要再次啟用,請呼叫廣告活動的方法 enable 。 若要判斷行銷活動的狀態,請呼叫行銷活動的 isEnabled、 isPaused和 isRemoved 方法。
function main() {
var campaignId = '12345';
var iterator = AdsApp.campaigns()
.withIds([campaignId])
.get();
// If the campaign is found, pause it.
while (iterator.hasNext()) {
var campaign = iterator.next();
campaign.pause();
}
}