สคริปต์ Google Ads ช่วยให้คุณจัดการและรายงานแคมเปญวิดีโอที่อิงตาม YouTube ได้ คุณใช้สคริปต์เพื่อจัดการแคมเปญวิดีโอที่มีอยู่ สร้างและจัดการกลุ่มโฆษณาและโฆษณา ตั้งค่าการกำหนดเป้าหมายสำหรับแคมเปญ และเรียกใช้รายงานได้ แต่คุณใช้สคริปต์ เพื่อสร้างแคมเปญวิดีโอไม่ได้
การดึงข้อมูลแคมเปญวิดีโอและกลุ่มโฆษณา
แคมเปญวิดีโอพร้อมใช้งานผ่านคอลเล็กชันของออบเจ็กต์
AdsApp
videoCampaigns
คุณ
สามารถเรียกข้อมูลได้เช่นเดียวกับการเรียกข้อมูลแคมเปญในสคริปต์ตามปกติ
const campaignName = "My first video campaign";
const campaignIterator = AdsApp.videoCampaigns()
.withCondition(`campaign.name = "${campaignName}"`)
.get();
for (const campaign of campaignIterator) {
...
}
เมื่อดึงข้อมูลแคมเปญแล้ว คุณจะดึงข้อมูลกลุ่มโฆษณาของแคมเปญได้ในลักษณะเดียวกัน ดังนี้
const adGroupIterator = campaign.videoAdGroups()
.withCondition(`ad_group.name = "${adGroupName}"`)
.get();
for (const adGroup of adGroupIterator) {
...
}
หรือจะใช้วิธี AdsApp.videoAdGroups()
ก็ได้
const adGroupIterator = AdsApp.videoAdGroups()
.withCondition(`campaign.name = "${campaignName}" AND ad_group.name = "${adGroupName}")
.get();
for (const adGroup of adGroupIterator) {
...
}
การสร้างโฆษณาวิดีโอ
สคริปต์ Google Ads ช่วยให้คุณดึงข้อมูลโฆษณาวิดีโอได้โดยใช้เมธอด
videoAds()
ของ
VideoAdGroup
คุณสร้างโฆษณาวิดีโอใหม่ได้โดยใช้วิธีการ
newVideoAd()
ของ VideoAdGroup
รูปแบบโฆษณาวิดีโอ
รูปแบบโฆษณาวิดีโอที่รองรับจะแตกต่างกันไปตามประเภทของแคมเปญวิดีโอ หากต้องการให้แน่ใจว่าคุณเลือกแคมเปญวิดีโอประเภทที่ถูกต้อง ให้เพิ่มwithCondition
การโทรAdvertisingChannelSubType
แคมเปญวิดีโอบางแคมเปญมีแคมเปญย่อยซึ่งจำกัดประเภทของโฆษณาที่
รองรับภายในแคมเปญนั้น กล่าวคือ VIDEO_ACTION
แคมเปญเท่านั้น
ที่รองรับโฆษณาประเภท VIDEO_RESPONSIVE
และ VIDEO_NON_SKIPPABLE
แคมเปญ
เท่านั้นที่รองรับโฆษณาประเภท NON_SKIPPABLE_INSTREAM_VIDEO_AD
วิธีที่ดีที่สุดในการดำเนินการกับแคมเปญบางประเภทคือการใช้
withCondition
ในตัวเลือก คุณอัปเดต
AdvertisingChannelSubType
สำหรับประเภทแคมเปญที่สนใจได้โดยทำดังนี้
const campaignIterator = AdsApp.videoCampaigns()
.withCondition("AdvertisingChannelSubType = VIDEO_ACTION")
.get();
แคมเปญวิดีโอที่ไม่มีประเภทย่อยรองรับรูปแบบโฆษณาวิดีโอต่อไปนี้
- TrueView ในสตรีม
- TrueView Video Discovery
- บัมเปอร์
คุณเลือกแคมเปญเหล่านี้ได้โดยใช้withCondition
const campaignIterator = AdsApp.videoCampaigns()
.withCondition("AdvertisingChannelSubType = null")
.get();
โฆษณาวิดีโอในสตรีมสามารถเล่นก่อน ระหว่าง หรือหลังวิดีโออื่นๆ โดยให้ ผู้ใช้มีตัวเลือกในการข้ามหลังจากเวลาที่ระบุ โฆษณา Video Discovery จะปรากฏในเครือข่าย Display และหน้าต่างๆ ของ YouTube และจะเล่นก็ต่อเมื่อผู้ใช้คลิกภาพปกของโฆษณาอย่างตั้งใจก่อน โฆษณาบัมเปอร์มีความยาว 6 วินาทีหรือสั้นกว่า และปรากฏได้ในวิดีโอ YouTube หรือวิดีโอในเว็บไซต์และแอปของพาร์ทเนอร์ใน เครือข่าย Display ดูรายละเอียดทั้งหมดเกี่ยวกับโฆษณาแต่ละประเภทได้ที่ เกี่ยวกับรูปแบบโฆษณาวิดีโอ
สร้างกลุ่มโฆษณา
คุณสร้างกลุ่มโฆษณาวิดีโอผ่านเมธอด
newVideoAdGroupBuilder()
ของแคมเปญวิดีโอ คุณต้องระบุประเภทกลุ่มโฆษณาและชื่อกลุ่มโฆษณาเมื่อสร้างกลุ่มโฆษณา ประเภทกลุ่มโฆษณาต้องเป็นประเภทใดประเภทหนึ่งต่อไปนี้ และจะเปลี่ยนแปลงไม่ได้หลังจากสร้างกลุ่มโฆษณาแล้ว
VIDEO_BUMPER
VIDEO_EFFICIENT_REACH
VIDEO_NON_SKIPPABLE_IN_STREAM
(สําหรับแคมเปญVIDEO_NON_SKIPPABLE
เท่านั้น)VIDEO_RESPONSIVE
(สําหรับแคมเปญVIDEO_ACTION
เท่านั้น)VIDEO_TRUE_VIEW_IN_DISPLAY
VIDEO_TRUE_VIEW_IN_STREAM
YOUTUBE_AUDIO
ตัวอย่าง
const videoAdGroup =
videoCampaign.newVideoAdGroupBuilder()
.withAdGroupType("VIDEO_TRUE_VIEW_IN_STREAM")
.withName("Video Ad Group")
.build()
.getResult();
สร้างเนื้อหาวิดีโอ
โดยทั่วไปแล้ว โฆษณาวิดีโอต้องอ้างอิงเนื้อหาวิดีโอ ซึ่งจะเป็นตัวกำหนดวิดีโอที่จะเล่นสำหรับโฆษณา คุณอัปโหลดวิดีโอโดยใช้สคริปต์ไม่ได้ แต่สามารถ
ลิงก์วิดีโอ YouTube ที่มีอยู่ซึ่งคุณอัปโหลดไว้ก่อนหน้านี้เพื่อใช้ในโฆษณาได้
โดยทำได้ด้วยการสร้าง
Asset
ด้วย
YouTubeVideoAssetBuilder
const assetOperation = AdsApp.adAsset().newYouTubeVideoAssetBuilder()
.withName("name")
// This is the ID in the URL for the YouTube video.
.withYouTubeVideoId(youTubeVideoId)
.build();
const videoAsset = assetOperation.getResult();
สร้างโฆษณา
หากต้องการสร้างโฆษณาใหม่ ให้ใช้วิธีการสร้างที่ตรงกับประเภทกลุ่มโฆษณา
(ต่อจาก newVideoAd()
):
inStreamAdBuilder()
videoDiscoveryAdBuilder()
bumperAdBuilder()
responsiveVideoAdBuilder()
(สำหรับแคมเปญVIDEO_ACTION
เท่านั้น)nonSkippableAdBuilder()
(สำหรับแคมเปญVIDEO_NON_SKIPPABLE
เท่านั้น)
ตัวอย่าง
const videoAd = videoAdGroup.newVideoAd()
.inStreamAdBuilder()
.withAdName("Video Ad")
.withFinalUrl(
"http://www.example.com/video-ad")
// Specify the video asset created in the last step.
.withVideo(video)
.build()
.getResult();
การกำหนดเป้าหมายวิดีโอ
แคมเปญวิดีโอมีการกำหนดเป้าหมายที่เกี่ยวข้อง 2 ประเภทที่แตกต่างกัน
VideoCampaignTargeting
แสดงถึงการกำหนดเป้าหมายใดๆ ที่ทำที่ระดับบัญชีสำหรับแคมเปญวิดีโอ
โดยทั่วไป และเข้าถึงได้โดยใช้ AdsApp.videoCampaignTargeting()
คุณแก้ไขค่านี้ผ่านสคริปต์ไม่ได้ แต่ดูได้
การกำหนดเป้าหมายอีกประเภทช่วยให้คุณระบุเกณฑ์สำหรับแคมเปญวิดีโอ
และกลุ่มโฆษณาวิดีโอแต่ละรายการได้ คุณเข้าถึงได้ด้วยเมธอด videoTargeting()
ในแคมเปญหรือกลุ่มโฆษณา และให้สิทธิ์เข้าถึงตัวเลือกและเครื่องมือสร้างสําหรับเกณฑ์เชิงบวกและเชิงลบสําหรับทุกประเภทที่ใช้ได้กับการกําหนดเป้าหมายระดับนั้น นอกจากนี้ ยังมีเมธอด
AdsApp.videoTargeting()
สำหรับดูเกณฑ์ในระดับบัญชี ซึ่งมี
ชุดเกณฑ์ที่แตกต่างจาก AdsApp.videoCampaignTargeting()
เช่นเดียวกับ
VideoCampaignTargeting
คุณจัดการเกณฑ์เหล่านี้ด้วยสคริปต์ไม่ได้
ตัวอย่างการยกเว้นตําแหน่งที่เฉพาะเจาะจงในแคมเปญมีดังนี้
videoCampaign.videoTargeting().newPlacementBuilder()
.withUrl("http://www.example.com")
.exclude();
เกณฑ์สำหรับข้อมูลประชากร (อายุ เพศ) จะทำงานแตกต่างจากเกณฑ์ประเภทอื่นๆ เล็กน้อย เมื่อสร้างกลุ่มโฆษณาใหม่ ระบบจะสร้างเกณฑ์สำหรับค่าอายุและเพศที่เป็นไปได้แต่ละค่าโดยอัตโนมัติ และกลุ่มโฆษณานั้นจะกำหนดเป้าหมายไปยังค่าทั้งหมด คุณยกเว้นข้อมูลประชากรได้โดยการดึงข้อมูลการกำหนดเป้าหมายที่มีอยู่และเรียกใช้เมธอด exclude()
ในข้อมูลดังกล่าว และคุณรวมข้อมูลประชากรที่ยกเว้นอีกครั้งได้โดยค้นหาการกำหนดเป้าหมายการยกเว้นที่มีอยู่และเรียกใช้ include()
ตัวอย่างการยกเว้นเพศที่เฉพาะเจาะจงจากกลุ่มโฆษณามีดังนี้
const videoGenderIterator = videoAdGroup.videoTargeting()
.genders()
.withCondition('GenderType = "GENDER_MALE"')
.get();
if (videoGenderIterator.hasNext()) {
const videoGender = videoGenderIterator.next();
videoGender.exclude();
}