คอมโพเนนต์ที่จำเป็นของ Search

หากต้องการสร้างแคมเปญ Search ใหม่ตั้งแต่ต้น คุณต้องสร้างสิ่งต่อไปนี้อย่างน้อย

แคมเปญและงบประมาณมีประโยชน์ในการสร้างแคมเปญทุกประเภท ในขณะที่การตั้งค่าบางอย่างภายในโฆษณากลุ่มโฆษณาจะมีประโยชน์อย่างยิ่งในการ สร้างแคมเปญ Search ไปที่คู่มือชิ้นงาน Search เพื่อดูวิธีสร้างชิ้นงานโดยใช้สคริปต์

โปรดทำความคุ้นเคยกับกลยุทธ์การเปลี่ยนแปลง เนื่องจากคำแนะนำนี้จะให้เฉพาะออบเจ็กต์ JavaScript ที่ใช้ในการเปลี่ยนแปลงเท่านั้น

งบประมาณ

งบประมาณต้องไม่ใช้ร่วมกัน และต้องมีชื่อที่ไม่ซ้ำกันในบัญชี ใช้CampaignBudgetOperationเพื่อสร้าง งบประมาณ

const budgetOperation = {
  "campaignBudgetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/campaignBudgets/${getNextTempId()}`,
      "name": "Search campaign budget",
      "amountMicros": "10000000",
      "deliveryMethod": "STANDARD",
      "explicitlyShared": false
    }
  }
}
operations.push(budgetOperation);

แคมเปญ

แคมเปญต้องอ้างอิงงบประมาณ คุณจึงต้องใช้ชื่อทรัพยากร งบประมาณที่แน่นอนซึ่งคุณสร้างขึ้นในขั้นตอนก่อนหน้าเพื่อระบุและใช้ออบเจ็กต์ งบประมาณที่เฉพาะเจาะจงนั้น ใช้ CampaignOperation ในตัวอย่างนี้ เรายังตั้งค่า AiMaxSetting เพื่อเปิดใช้ AI Max สำหรับ Search และ NetworkSettings ด้วย

const campaignOperation = {
  "campaignOperation": {
    "create": {
      "resourceName": `customers/${customerId}/campaigns/${getNextTempId()}`,
      "name": "Search campaign",
      "status": "PAUSED",
      "advertisingChannelType": "SEARCH",
      "campaignBudget": budgetOperation.campaignBudgetOperation.create.resourceName,
      "biddingStrategyType": "MANUAL_CPC",
      "startDate": "20240314",
      "endDate": "20250313",
      "manualCpc": {
        "enhancedCpcEnabled": true
      },
      "aiMaxSetting": {
        "enableAiMax": true
      },
      "networkSettings": {
        "targetGoogleSearch": true,
        "targetSearchNetwork": true
      },
      "containsEuPoliticalAdvertising": "DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING"
    }
  }
}
operations.push(campaignOperation);

กลุ่มโฆษณา

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

const adGroupId = getNextTempId();
const adGroupOperation = {
  "adGroupOperation": {
    "create": {
      "resourceName": `customers/${customerId}/adGroups/${adGroupId}`,
      "name": "Search ad group",
      "status": "PAUSED",
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "type": "SEARCH_STANDARD"
    }
  }
}
operations.push(adGroupOperation);

คีย์เวิร์ด

คุณต้องใช้คีย์เวิร์ดเพื่อเรียกให้โฆษณาแสดงในผลการค้นหา ระบบจะเพิ่มเป็นเกณฑ์ในกลุ่มโฆษณาโดยใช้ AdGroupCriterionOperation คุณต้อง อ้างอิงกลุ่มโฆษณาที่สร้างในขั้นตอนก่อนหน้า

const keywordOperation = {
  "adGroupCriterionOperation": {
    "create": {
      "adGroup": adGroupOperation.adGroupOperation.create.resourceName,
      "status": "ENABLED",
      "keyword": {
        "text": "flowers",
        "matchType": "BROAD"
      }
    }
  }
}
operations.push(keywordOperation);

โฆษณาในกลุ่มโฆษณาที่มีโฆษณา

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

หากต้องการสร้างโฆษณากลุ่มโฆษณา ให้ใช้ AdGroupAdOperation

const adGroupAdOperation = {
  "adGroupAdOperation": {
    "create": {
      "resourceName": `customers/${customerId}/adGroupAds/${adGroupId}~${getNextTempId()}`,
      "adGroup": adGroupOperation.adGroupOperation.create.resourceName,
      "status": "PAUSED",
      "ad": {
        "name": "Search RSA ad",
        "finalUrls": [
          "http://www.example.com"
        ],
        "responsiveSearchAd": {
          "headlines": [
            {
              "text": textAsset.assetOperation.create.resourceName
            },
            {
              "text": "Headline 2"
            },
            {
              "text": "Headline 3"
            }
          ],
          "descriptions": [
            {
              "text": "Description 1"
            },
            {
              "text": "Description 2"
            }
          ]
        }
      }
    }
  }
}
operations.push(adGroupAdOperation);