المكوّنات المطلوبة في "بحث Google"

لإنشاء "حملة على شبكة البحث" جديدة من البداية، يجب إنشاء ما يلي على الأقل:

تفيد الحملة والميزانية في إنشاء جميع أنواع الحملات، بينما تكون بعض الإعدادات ضمن إعلانات المجموعة الإعلانية مفيدة بشكل خاص في إنشاء "حملات على شبكة البحث". يمكنك الانتقال إلى دليل مواد العرض على "بحث Google" لمعرفة كيفية إنشاء مواد العرض باستخدام النصوص البرمجية.

تأكَّد من أنّك على دراية باستراتيجية التعديل، لأنّ هذا الدليل سيقدّم عناصر 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 على "بحث Google"، و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);

إعلان المجموعة الإعلانية مع إعلان

تؤدي هذه الخطوة إلى إنشاء إعلان للمجموعة الإعلانية، والذي يربط مجموعة إعلانية بإعلان. يجب أن يشير إعلان المجموعة الإعلانية إلى المجموعة الإعلانية، لذا ستحتاج إلى اسم المورد المحدد الذي ضبطته في الخطوة السابقة. يمكنك إنشاء إعلان ضمن العملية نفسها، واستخدام مواد عرض نصية تم إنشاؤها سابقًا أو إنشاؤها ضمن العملية نفسها أيضًا. ينشئ المثال المعروض هنا إعلانًا متجاوبًا على شبكة البحث باستخدام 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);