2013-04-07 4 views
10

Ich verwende Google Publisher-Tags zum Abrufen der Anzeigen.Wie kann überprüft werden, ob die Google Publisher-Tag-Anzeigenfläche leer ist oder nicht?

So prüfen Sie, ob für eine bestimmte Anzeigenfläche eine Anzeige oder eine leere Anzeige geschaltet wird. Ich verwende den folgenden Code.

googletag.defineSlot("/1234/travel", [[300,250],[300x600]], "div-gpt-ad-123456789-0")) 


<div id="div-gpt-ad-123456789-0" style="width: 728px; height: 90px"> 
    <script type="text/javascript"> 
     googletag.cmd.push(function() { 
     googletag.display("div-gpt-ad-123456789-0"); 
     }); 
    </script> 
    </div> 

Wie dieses div überprüfen ("div-gpt-ad-123456789-0") enthält eine Anzeige oder nicht?

Antwort

1

Haben Sie versucht, die div mit Firebug oder Chrome Web Inspector zu überprüfen? Es sollte ein iframe innerhalb des divs geben, wenn es korrekt geladen wird und innerhalb des iframes wird etwas html mit dem Anzeigen-Creative sein.

Sie können DFP ziemlich einfach mit der DFP console debuggen, um zu testen, ob Ihre Seite richtig getaggt ist und die Anzeigen ausgeliefert werden.

+0

Hallo, danke, wie Sie das technisch erreichen. Gemäß meiner Anforderung muss ich die Anzeige überprüfen und muss die Anzeige anzeigen, wenn keine Anzeige vorhanden ist, muss ich Standardanzeige oder -bild anzeigen. Bitte schlagen Sie mir vor, wie Sie mit diesem – user2254912

+0

fortfahren Ich hatte das gleiche Problem, also habe ich ein jquery-Plugin entwickelt, um diese Anforderung hier zu behandeln: https://github.com/coop182/jquery.dfp.js Wenn Sie jQuery on verwenden Deine Seite kann dann mein Plugin vom normalen DFP-Skript übernehmen. Sie können den Anzeigenblock div mit Standardinhalt füllen, bei dem es sich um eine andere Anzeige oder ein anderes Bild handeln könnte. Wenn eine Anzeige in DFP für diesen Anzeigenblock gefunden wird, wird der Inhalt des ... Kontakt aufnehmen mit mir, wenn du ein Beispiel brauchst. –

+0

Hallo Vielen Dank. Bitte geben Sie mir ein Beispiel, damit ich einige Informationen zu diesem Thema bekommen kann. – user2254912

7

Die GPT API stellt ein „SlotRenderEndedEvent“, die ausgelöst wird, wenn die Anzeige gemacht wird (oder, wenn nichts zurückgegeben wird)

https://developers.google.com/doubleclick-gpt/reference

Sie die Handler hinzufügen und überprüfen isEmpty, um zu bestimmen, ob eine Anzeige gewesen serviert.

Auch wenn Sie CollapsEmptyDivs für die Anzeigenfläche aktiviert haben, wird der Anzeigen-DIV so eingestellt, dass er angezeigt wird: None by GPT. Dies ist auch ein Hinweis darauf, dass nichts zurückgegeben wurde.

13

Man könnte so etwas tun:

googletag.pubads().addEventListener('slotRenderEnded', function(event) { 
    if (event.slot.getSlotElementId() == "div-gpt-ad-123456789-0") { 
     var containsAd = !event.isEmpty;  
    } 
}); 
+1

Hallo Aus irgendeinem Grund funktioniert das nicht jedes Mal, es scheitert etwa 60% der Zeit, weißt du warum? – CP3O

+0

Eine kleine späte Antwort. Es kann sein, dass Sie Anzeigen von Drittanbietern haben und in der Regel DFP handelt, da die Anzeige nicht leer ist, wenn sie eine Rücksendung bereitstellt. Die Rücksendung ist jedoch möglicherweise leer. – spoq

+0

Zustimmen. Anzeigenweiterleitungen sind eine knifflige Angelegenheit. Sobald eine Anzeige als Weiterleitung geschaltet wird, können Sie nicht 100% ig sicher sein, was angezeigt wird. –

2

Sie ein On-Screen-Debugging-Tool verwenden, können die Google Publisher Console genannt Lieferung problems.Use "googfc?", Wie Abfragezeichenfolgeflag zu beheben. Referenz: https://support.google.com/dfp_premium/answer/2462712?hl=en

+0

Anstatt Links als Antwort zu veröffentlichen, fügen Sie einen Text hinzu, um zu erklären, wie diese Antwort hilft, das aktuelle Problem zu beheben –

Verwandte Themen