เนื้อหา

ก่อนสร้างแคมเปญ Demand Gen คุณควรนําเข้าชิ้นงานทั้งหมดที่วางแผนจะใช้ในแคมเปญ คุณกลับมาเพิ่มชิ้นงานได้ทุกเมื่อ ในภายหลัง แต่คุณต้องมีชุดชิ้นงานเพื่อเริ่มต้น

ดูคู่มือข้อกําหนดและแนวทางปฏิบัติแนะนำสําหรับชิ้นงาน Demand Gen ขณะวางแผนแคมเปญ

ชิ้นงานรูปภาพและวิดีโอเป็นชิ้นงานประเภทหลัก และคู่มือนี้จะแสดงวิธีอัปโหลดชิ้นงานแต่ละประเภท หลักการเหล่านี้สามารถขยายไปใช้กับ ชิ้นงานประเภทอื่นๆ ได้ด้วย ไม่ว่าคุณจะสร้างชิ้นงานประเภทใด ให้ใช้ AssetOperation เพื่อสร้างชิ้นงาน

คุณสร้างชิ้นงานได้โดยใช้ AdsApp โดยไม่ต้องใช้ mutate แต่เพื่อความสอดคล้อง คู่มือนี้จึงใช้วิธีเดียวกับที่ใช้ในการดำเนินการอื่นๆ ทั้งหมด โปรดทราบว่าคุณสามารถและควรนำชิ้นงานที่มีอยู่มาใช้ซ้ำหากมีชิ้นงานอยู่แล้ว ดังนั้นแม้ว่าคุณจะต้องมีชิ้นงานเพื่อสร้างแคมเปญ Demand Gen แต่ก็ไม่จำเป็นต้องสร้างชิ้นงานเหล่านั้นเป็นส่วนหนึ่งของกระบวนการสร้างแคมเปญ

ชิ้นงานรูปภาพ

ระบบจะอัปโหลดชิ้นงานรูปภาพในรูปแบบเข้ารหัส Base64 เนื่องจากคุณไม่สามารถอัปโหลดรูปภาพลงในสคริปต์ Google Ads ได้โดยตรง คุณจึงมีตัวเลือก 2 แนวทางในการรับข้อมูลรูปภาพและเข้ารหัสเพื่ออัปโหลด

หากต้องการดึงรูปภาพจาก Google ไดรฟ์ คุณจะต้องมีรหัสของรูปภาพก่อน ซึ่งเป็นวิธีที่ดีที่สุดในการระบุรูปภาพที่ไม่ซ้ำกัน วิธีหนึ่งในการรับรหัสคือการคัดลอก ลิงก์ที่แชร์ได้จาก UI ของ Google ไดรฟ์ แล้วแยก 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())
      }
    }
  }
}

หรือคุณจะดึงรูปภาพที่โฮสต์ในเว็บเซิร์ฟเวอร์ตาม URL โดยใช้ UrlFetchAppก็ได้

const file = UrlFetchApp.fetch(imageUrl);

จากนั้นคุณจะเรียกใช้ getBlob ในไฟล์นี้ได้เช่นเดียวกับไฟล์ในไดรฟ์ ดังนั้นการสร้างการดำเนินการจึงเหมือนกับขั้นตอนสำหรับไฟล์ใน Google ไดรฟ์

ชิ้นงานวิดีโอ

วิธีที่ง่ายที่สุดในการใช้ชิ้นงานวิดีโอคือการใช้วิดีโอ YouTube หากคุณอัปโหลดชิ้นงานเป็นส่วนหนึ่งของกระบวนการสร้างแคมเปญ ให้ใช้รหัสชั่วคราว ไม่เช่นนั้น ให้จดชื่อทรัพยากรที่ส่งคืนเพื่อใช้ ในการดำเนินการในอนาคตเมื่อคุณต้องอ้างอิงชิ้นงานเพื่อเพิ่มลงในกลุ่มชิ้นงาน

const videoAsset = {
  "assetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
      "name": "Marketing video",
      "type": "YOUTUBE_VIDEO",
      "youtube_video_asset": {
        "youtube_video_title": "Demand Gen video",
        "youtube_video_id": "123456789"
      }
    }
  }
}
operations.push(videoAsset);