У меня возникла проблема при получении объекта AdGroupAd в том, что единственные заполненные данные — это идентификатор & AdType кажется, что я не могу получить другие свойства рекламы, такие как заголовки.
В настоящее время я подключаюсь к тестовой учетной записи, используя тестовый ключ от Google.
Моя функция для получения всех добавить в моей группе объявлений
public function getAdGroupAds($adGroup_id, $limit = 500, $page = 0){
$adGroupAdsService = $this->adWordsServices->get($this->session, AdGroupAdService::class);
$selector = new Selector();
$selector->setFields(['Id', 'Url', 'Name']);
$selector->setOrdering([new OrderBy('Id', SortOrder::ASCENDING)]);
$selector->setPredicates(
[new Predicate('AdGroupId', PredicateOperator::IN, [$adGroup_id])]
);
$selector->setPaging(new Paging($page * $limit, $limit));
$page = $adGroupAdsService->get($selector);
$entries = $page->getEntries();
$ads = array();
if ( $entries !== null) {
$totalNumEntries = $page->getTotalNumEntries();
foreach ($entries as $adGroupAd) {
$id = $adGroupAd->getAd()->getId();
$ads[$id] = $adGroupAd->getAd();
}
}
return $ads;
}
И массив объектов, которые я получаю,
[309915904267] => Google\AdsApi\AdWords\v201806\cm\ExpandedTextAd Object
(
[headlinePart1:protected] =>
[headlinePart2:protected] =>
[description:protected] =>
[path1:protected] =>
[path2:protected] =>
[id:protected] => 309915904267
[url:protected] =>
[displayUrl:protected] =>
[finalUrls:protected] =>
[finalMobileUrls:protected] =>
[finalAppUrls:protected] =>
[trackingUrlTemplate:protected] =>
[finalUrlSuffix:protected] =>
[urlCustomParameters:protected] =>
[urlData:protected] =>
[automated:protected] =>
[type:protected] => EXPANDED_TEXT_AD
[devicePreference:protected] =>
[systemManagedEntitySource:protected] =>
[AdType:protected] => ExpandedTextAd
[parameterMap:Google\AdsApi\AdWords\v201806\cm\Ad:private] => Array
(
[Ad.Type] => AdType
)
)
Вещи, которые я пробовал:
1) Прямой звонок getHeadlinePart1();
на $adGroupAd->getAd()
чтобы увидеть, будет ли он подключаться к API и получать данные, но я не получаю пустые значения от получателей.
2) Использование AdService
затем получить объявление после того, как у меня есть его идентификатор из AdGroupAdService
Задача ещё не решена.
Других решений пока нет …