0

Ich habe dies jetzt für ein paar Stunden recherchiert und kann immer noch keine Lösung finden.Adwords API Content_label auf Kampagnenebene ausschließen

Ich beabsichtige einige content_labels auf Kampagnenebene auszuschließen. Zuerst folgte ich den API-Beispielen, aber diese sind für "CustomerNegativeCriteria", die Einstellungen auf Kontoebene sind (Randbemerkung, ich konnte diese globalen Einstellungen auf der AdWords-Oberfläche nicht finden).

Dann las ich mehr und versuchte, sie mit einem CampaignCriterion

So ausschließen werde ich meine ContentLabel Objekte auf diese Weise erstellen:

$criterion = new ContentLabel(); 
$criterion->setContentLabelType($sLabelType); 
$criterion->setType(CriterionType::CONTENT_LABEL); 

Dann habe ich diesen Modifikator zu einem CampaignCriterion Objekt hinzufügen wird :

foreach ($aModifiers as $modifier) { 
    $campaignCriterion = new CampaignCriterion($sCampaignId, $isNegative, $modifier, $bidModifier); 
    $operation = new CampaignCriterionOperation(); 
    $operation->setOperand($campaignCriterion); 
    $operation->setOperator($operator); 
    $operations[] = $operation; 
} 

Und dann werde ich diese Operationen zu einem CampaignCriterionService

passieren
$oCampaignCriterionService = $this->getCampaignCriterionService(); 
return $oCampaignCriterionService->mutate($operations); 

All dies erzeugt diesen Fehler, aber ich kann nicht finden, wie man das löst. weil in der Kampagne diese Werte geschaffen sind nach wie vor in Green (aktiv)

Message: [ 
    CriterionError.CANNOT_TARGET_CRITERION @ operations[0].operand.criterion.contentLabelType; trigger:'DP', 
    CriterionError.CANNOT_TARGET_CRITERION @ operations[1].operand.criterion.contentLabelType; trigger:'ADULTISH', 
    CriterionError.CANNOT_TARGET_CRITERION @ operations[2].operand.criterion.contentLabelType; trigger:'JACKASS', 
    CriterionError.CANNOT_TARGET_CRITERION @ operations[3].operand.criterion.contentLabelType; trigger:'PROFANITY', 
    CriterionError.CANNOT_TARGET_CRITERION @ operations[4].operand.criterion.contentLabelType; trigger:'TRAGEDY', 
    CriterionError.CANNOT_TARGET_CRITERION @ operations[5].operand.criterion.contentLabelType; trigger:'VIDEO_RATING_DV_MA' 
] 

ich von hier nach der Baumstruktur bin, aber ohne Erfolg: https://developers.google.com/adwords/api/docs/reference/v201710/CampaignCriterionService.ContentLabel?hl=th

Jede Idee, was ich falsch machen könnte ?

Antwort

0

Das Problem dabei war, dass ich CampaignCriterion Objekte war die Schaffung und das war das Problem, wenn auch nicht explizit überall angegeben, und nicht intuitiv, es eine anderer NegativeCampaignCriterion genannt Objekttyp ist, und das ist das richtige Objekt ContentLabel ‚s auszuschließen und Placement

foreach ($aModifiers as $modifier) { 
    if ($isNegative) { 
     $campaignCriterion = new NegativeCampaignCriterion($sCampaignId, $isNegative, $modifier, $bidModifier); 
    } else { 
     $campaignCriterion = new CampaignCriterion($sCampaignId, $isNegative, $modifier, $bidModifier); 
    } 
    $operation = new CampaignCriterionOperation(); 
    $operation->setOperand($campaignCriterion); 
    $operation->setOperator($operator); 
    $operations[] = $operation; 
} 
Verwandte Themen