เนื้อหา

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

อ่านข้อมูลเกี่ยวกับชิ้นงานและ ข้อกำหนดของชิ้นงานสำหรับ แคมเปญ Performance Max ขณะวางแผนแคมเปญ

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

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

ชิ้นงานข้อความ

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

const textAsset = {
  "assetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
      "textAsset": {
        "text": "Travel the World"
      }
    }
  }
}
operations.push(textAsset);

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

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

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

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())
      }
    }
  }
}
operations.push(imageAsset);

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

const file = UrlFetchApp.fetch(imageUrl);

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