Google Ads API PHP ক্লায়েন্ট লাইব্রেরির src/Google/Ads/GoogleAds/VX
ডিরেক্টরিতে থাকা সোর্স কোড, যেখানে X হল Google Ads API
ভার্সন নম্বর, প্রকাশিত প্রোটো
ফাইলের ভিত্তিতে GAPIC (জেনারেট করা API
ক্লায়েন্ট) জেনারেটর ব্যবহার করে অটোমেটিক জেনারেট করা হয়।
জেনারেট করা সোর্স কোডটি তারপরে পরিবর্তিত হয় যাতে বৈশিষ্ট্য এবং ক্লাসের রেফারেন্স থাকে
যা GoogleAdsClient ক্লাস ব্যবহার করে Google Ads API-এর সাথে কাজ করে এমন পরিষেবা ক্লায়েন্ট তৈরি করতে প্রয়োজন, যা GoogleAdsClientBuilder::build() কল করে তৈরি করা হয়। GoogleAdsClient এবং
GoogleAdsClientBuilder, দুটিই ম্যানুয়ালি ম্যানেজ করা ক্লাস যা
src/Google/Ads/GoogleAds/Lib/VX/-এ অবস্থিত।
জেনারেট করা ক্লাসের লোকেশন
পোস্ট-প্রসেস করা পরিষেবা ক্লায়েন্ট
src/Google/Ads/GoogleAds/VX/Services/Client/-এ (যেমন, V26) এবং সংশ্লিষ্ট অনুরোধ ও
উত্তর মেসেজ ক্লাস (যেমন, MutateCampaignsRequest এবং
SearchGoogleAdsRequest)
src/Google/Ads/GoogleAds/VX/Services/-এ রয়েছে। মাইনর API
রিলিজ (যেমন v25.1) সেগুলির মেজর ভার্সন ডিরেক্টরির
(V25) মধ্যে তৈরি করা হয়।
ব্যবহার
আপনাকে অবশ্যই একটি অনুরোধ অবজেক্ট তৈরি করতে হবে এবং আপনি যে পরিষেবা ক্লায়েন্ট ব্যবহার করতে চান সেটিতে এটি পাস করতে হবে। প্যারামিটারগুলি প্রয়োজনীয় নাকি ঐচ্ছিক তার উপর নির্ভর করে, আপনার কাছে একটি অনুরোধ অবজেক্ট তৈরি করার একাধিক
উপায় রয়েছে, যার মধ্যে প্রয়োজনীয় প্যারামিটারগুলি পাস করার জন্য একটি স্ট্যাটিক build() ফ্যাক্টরি পদ্ধতি
রয়েছে।
উদাহরণ ১.১: প্রয়োজনীয় প্যারামিটার সহ পদ্ধতি
নিচে দেওয়া স্যাম্পেল কোড থেকে জানতে পারবেন কীভাবে
CampaignServiceClient::mutateCampaigns() কল করতে হয়। যেহেতু $customerId এবং
$campaignOperations দুটিই প্রয়োজনীয় প্যারামিটার, তাই অনুরোধ ক্লাসে একটি স্ট্যাটিক build() ফ্যাক্টরি মেথড
তৈরি করা হয় যা দুটি প্যারামিটারই গ্রহণ করে।
প্যাটার্ন ১: স্ট্যাটিক বিল্ড পদ্ধতি (সাজেস্ট করা হয়েছে)
$campaignServiceClient = $googleAdsClient->getCampaignServiceClient();
$response = $campaignServiceClient->mutateCampaigns(
MutateCampaignsRequest::build(
$customerId,
$campaignOperations
)
);
প্যাটার্ন ২: ফ্লুয়েন্ট সেটার
$campaignServiceClient = $googleAdsClient->getCampaignServiceClient();
$request = (new MutateCampaignsRequest())
->setCustomerId($customerId)
->setCampaignOperations($campaignOperations);
$response = $campaignServiceClient->mutateCampaigns($request);
উদাহরণ ১.২: প্রয়োজনীয় ও ঐচ্ছিক প্যারামিটার সহ পদ্ধতি
নিম্নলিখিত স্যাম্পেল কোড GoogleAdsServiceClient::search() কল করে। এই
উদাহরণে, তৈরি করা build() মেথড শুধুমাত্র দুটি প্যারামিটার গ্রহণ করে
($customerId এবং $query) কারণ সেগুলি প্রয়োজনীয় প্যারামিটার। LIMIT ক্লজ উপেক্ষা করে কোয়েরির সাথে ম্যাচ করা
মোট ফলাফলের সংখ্যা জানার অনুরোধ করতে, আপনি
setReturnTotalResultsCount() ব্যবহার করে এটি স্পষ্টভাবে সেট করতে পারেন। অন্যথায়, আপনি
প্যাটার্ন ৩-এ দেখানো অনুযায়ী, SearchGoogleAdsRequest-এর কনস্ট্রাক্টরে অ্যাসোসিয়েটিভ অ্যারেতে
সব প্যারামিটার একসাথে পাস করতে পারেন।
প্যাটার্ন ১: ফ্লুয়েন্ট সেটার সহ স্ট্যাটিক বিল্ড পদ্ধতি
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
$response = $googleAdsServiceClient->search(
SearchGoogleAdsRequest::build($customerId, $query)
->setReturnTotalResultsCount(true)
);
প্যাটার্ন ২: সাবলীল সেটার
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
$request = (new SearchGoogleAdsRequest())
->setCustomerId($customerId)
->setQuery($query)
->setReturnTotalResultsCount(true);
$response = $googleAdsServiceClient->search($request);
প্যাটার্ন ৩: অ্যারে কনস্ট্রাক্টর
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
$request = new SearchGoogleAdsRequest([
'customer_id' => $customerId,
'query' => $query,
'return_total_results_count' => true
]);
$response = $googleAdsServiceClient->search($request);
উদাহরণ ২: শুধুমাত্র ঐচ্ছিক প্যারামিটার সহ পদ্ধতি
এই উদাহরণে দেখানো হয়েছে কীভাবে
GeoTargetConstantServiceClient::suggestGeoTargetConstants()-কে কল করতে হয়। GeoTargetConstantServiceClient::suggestGeoTargetConstants()-এর সব
প্যারামিটার ঐচ্ছিক হওয়ায়,
এই ক্ষেত্রে সোর্স কোডে build() জেনারেট করা হয় না—আপনাকে
সেটার বা অ্যারে কনস্ট্রাক্টর ব্যবহার করে অনুরোধ অবজেক্ট তৈরি করতে হবে।
প্যাটার্ন ১: ফ্লুয়েন্ট সেটার (সাজেস্ট করা হয়েছে)
$geoTargetConstantServiceClient =
$googleAdsClient->getGeoTargetConstantServiceClient();
$request = (new SuggestGeoTargetConstantsRequest())
->setLocale($locale)
->setCountryCode($countryCode)
->setLocationNames(new LocationNames(['names' => $locationNames]));
$response =
$geoTargetConstantServiceClient->suggestGeoTargetConstants($request);
প্যাটার্ন ২: অ্যারে কনস্ট্রাক্টর
$geoTargetConstantServiceClient =
$googleAdsClient->getGeoTargetConstantServiceClient();
$response = $geoTargetConstantServiceClient->suggestGeoTargetConstants(
new SuggestGeoTargetConstantsRequest([
'locale' => $locale,
'country_code' => $countryCode,
'location_names' => new LocationNames(['names' => $locationNames])
])
);