Inserimento di uno script personalizzato dopo l'intestazione

Ciao a tutti,

Ho già il plugin ufficiale degli annunci di Discourse funzionante e gli annunci vengono visualizzati sul mio sito. La domanda è: cosa succede se qualcuno vuole inserire uno script o un annuncio personalizzato che non sia uno di quelli integrati in Discourse?

Ho provato a andare su Personalizza → Tema → Modifica HTML/CSS → Dopo l’intestazione. Ho incollato un blocco di script lì e ricaricato il sito, ma non lo vedo. In realtà, l’unico momento in cui riesco a vederlo è se lo inserisco tra i tag , il che fa sì che l’annuncio appaia in fondo alla pagina. “Dopo l’intestazione” sarebbe invece la posizione migliore, ma non viene caricato. Tieni presente che c’è l’attributo async in questo script.

Insomma, perché serve un plugin complicato per semplicemente copiare e incollare un blocco HTML? Anche Google fornisce il proprio script e puoi semplicemente copiarlo e incollarlo dopo l’intestazione. È quello che fanno normalmente le persone per i siti web, ma sembra che non funzioni su Discourse perché qualcosa blocca lo script. Non è la CSP, dato che ho già impostato https: e inline-code come filtri, il che dovrebbe permettere qualsiasi JS che inizia con “https”. Ecco un annuncio di Google:

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- Annuncio 1 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-3368174556925488"
     data-ad-slot="4362547659"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>

Prova a far funzionare manualmente il codice sopra senza usare il plugin Adsense e inseriscilo nel tema dopo l’intestazione.

#plugin:advertising

Aggiornamento: apparentemente la risposta è “Annunci interni” (House Ads). Tuttavia, anche quando inserisco alcuni script negli Annunci interni, questi non vengono visualizzati, quindi Discourse sta bloccando qualcosa, dato che se pubblico lo stesso script su una pagina HTML qualsiasi, viene mostrato.

1 Mi Piace

Ora puoi provare a farlo utilizzando un componente del tema. L’hai già provato?

Spoiler: gli annunci non si aggiorneranno perché Discourse è un’applicazione a pagina singola. Se AdSense è cambiato e ora può aggiornare automaticamente gli annunci senza utilizzare adsbygoogle.push({}), allora è una novità per me.

1 Mi Piace

In realtà, ho finito per usare un iframe. Ho inserito un iframe all’interno di House Ads e ha funzionato. Gli annunci di Google Adsense si aggiornano se ricarichi la pagina.

L’unico svantaggio è che, se voglio posizionare un annuncio affiliato di House Ads in fondo alla pagina, non c’è un’opzione per farlo. Posso inserirlo solo in cima alla lista degli argomenti o in mezzo. Sarebbe bello se venisse aggiunta anche l’opzione per la parte inferiore, dandoci più libertà.

Tuttavia, Google non riconoscerà l’argomento del tuo forum e mostrerà ai tuoi visitatori annunci molto meno pertinenti, azzerando completamente le tue entrate.

Non lo faranno se ti limiti a navigare verso un’altra pagina.

2 Mi Piace

Si prega di fornire un riferimento per questa affermazione.

Non dovrebbe fare alcuna differenza se gli annunci vengono serviti tramite un tag IFRAME o un tag SCRIPT per i bot di Google AdSense e altri bot pubblicitari che analizzano il sito per il contesto.

Non vediamo l’ora di leggere alcuni riferimenti per gli sviluppatori di Google, di sicuro!

Grazie.

Quando un annuncio AdSense viene servito all’interno di un iframe annidato, le funzionalità di sicurezza del browser impediscono all’annuncio di rilevare l’URL o il dominio della pagina da utilizzare per il targeting. Di conseguenza, non viene servito l’annuncio più pertinente e le entrate pubblicitarie sono inferiori rispetto al possibile.

3 Mi Piace

Sì, ma questa è solo una sfumatura, non l’intera immagine di come viene creato il contesto pubblicitario.

Tutti i siti che utilizzano AdSense vengono scansionati dal crawler di Google Adsense, quindi i server di Google servono gli annunci in contesto con il sito basandosi sul crawler che lo scansiona.

Ciò significa che un sito tecnologico che discute di Ruby on Rails riceverà annunci pertinenti a quel contesto (se disponibili) a livello di sito.

Tuttavia, a livello di pagina, naturalmente esiste un problema con il contesto nei tag IFRAME nidificati.

Non tutti i tag pubblicitari serviti in tag IFRAME sono nidificati.

Ecco un esempio di tag IFRAME nidificati:

<iframe src="http://www.w3schools.com" width="1000" height="1000" id="frame1" name="frame1">
   <iframe width="200" height="200" src="http://www.bing.com" id="frame2" name="frame2">
   </iframe>
</iframe>

Personalmente, per essere onesti, raramente ho visto questo accadere nella pratica; e quando lo abbiamo verificato (cosa che abbiamo fatto molte volte negli ultimi 15 anni circa), l’unica volta in cui abbiamo riscontrato questo problema è stato con i tag di passback.

Spero che questo sia d’aiuto.

Volevi un riferimento. Non è questo che intendevano con ‘annidato’. È chiaro dal titolo del paragrafo “Come posso mostrare un annuncio AdSense all’interno di un iFrame?”. Utilizzare un iframe era addirittura una violazione delle policy ai vecchi tempi.

Ho provato ogni trucco del mestiere con Adsense dal 2007 e ho scritto il primo plugin Discourse Adsense con @michaeld.

Immagino che abbiamo esperienze diverse. È bello sapere che sei riuscito a cavartela. Per chiunque altro voglia provarci: non sarò qui ad asciugare le vostre lacrime.

3 Mi Piace

Beh, per essere franchi, abbiamo servito oltre 1.000.000.000 di annunci nell’ultimo decennio e non serviamo AdSense direttamente da molti anni (non ci piace AdSense per molte ragioni), quindi esaminiamo questa “pubblicazione di annunci” da una prospettiva d’insieme, guardando a cosa sta accadendo ora nella pubblicità display.

Contesto (Rilevanza)

La maggior parte delle reti pubblicitarie che pubblicano annunci acquistati direttamente, come ad esempio IDN Technet o altre reti basate sul contesto, non scansionano i siti per il contenuto. Promuovono il sito ai loro acquirenti di annunci e, ad esempio, diranno: “Ehi, questo è Discourse meta e hanno contenuti eccellenti su tutto ciò che riguarda lo sviluppo tecnologico, Ruby, JavaScript e così via”. Li raccomandiamo vivamente.

Poi, oggi forniscono al pubblicatore una voce ads.txt e serviranno annunci al pubblicatore dalla loro rete pubblicitaria in base alla categoria del sito e alle sottocategorie, non tramite un crawler (come il crawler di AdSense).

Questa è la regola oggi, non l’eccezione.

Lo stesso vale per i contenuti video e gli annunci basati su video. Il nostro partner video vende annunci per il nostro sito in base al contesto del sito, in un depliant, non basandosi su un “robot di scansione” che cerca il contesto.

In effetti, non serviamo annunci da anni da nessuna rete pubblicitaria che si affidi a un crawler per classificare un sito; specialmente per i tag passback. I tag passback funzionano sempre meglio quando il contesto è hard-coded nella rete pubblicitaria, piuttosto che derivato da un crawler che esegue la classificazione.

Passback

È sempre difficile ottenere un contesto pertinente dagli annunci passback (tag).

La mia esperienza, da pubblicatore che ha servito oltre un miliardo di annunci display nel corso degli anni, è di non utilizzare una rete pubblicitaria che sviluppa il contesto da un crawler per le reti di annunci passback.

È meglio, in base alla mia esperienza nella pubblicazione di annunci nell’ultimo decennio, utilizzare tag passback basati su un contesto hard-coded. Ad esempio, se ho un sito tecnologico e voglio servire passback all’India, userò tag passback di interesse tecnologico per gli appassionati di tecnologia indiani.

AdSense

Abbiamo usato AdSense forse 15-10 anni fa e, nell’ultimo decennio, non ricordo quando abbiamo servito AdSense direttamente. AdSense non è davvero un ottimo modo per generare entrate, a mio avviso.

AdSense sviluppa il contesto dal proprio crawler, quindi in generale, se il tuo tag non è un tag IFRAME nidificato (un tag passback IFRAME all’interno di un tag IFRAME), starai bene con i tag IFRAME.

Alcuni vantaggi dei tag IFRAME

  • Il browser alloca uno spazio per un iframe in anticipo e ne tiene conto durante il rendering del documento.

  • Gli iframe implementano la politica di origine incrociata, che può essere utile per richiamare siti/contenuti/annunci da altri nomi di dominio; sono anche relativamente sicuri ed è per questo che la maggior parte delle soluzioni pubblicitarie web si basa sugli iframe.

  • Se i contenuti devono essere caricati prima e poi gli annunci, ciò può essere fatto utilizzando un iframe.

  • L’iframe aiuta a migliorare le prestazioni.

  • L’iframe viene caricato indipendentemente dagli altri componenti della pagina.

  • Se un utente ha disabilitato JavaScript, gli iframe funzioneranno.

  • Un tag iframe ha gli attributi “height” e “width,” che consentono al designer grande libertà con le dimensioni e il formato, come 300×250, 728×90, a seconda delle dimensioni dell’annuncio.

  • Il tag iframe può apparire ovunque nella pagina e possono essere aggiunti diversi iframe se lo si desidera.

Alcuni svantaggi dei tag IFRAME

  • I tag iframe possono causare problemi di accessibilità.

  • I tag iframe non sono supportati da tutti i browser e possono essere visualizzati in modo improprio o addirittura mostrare uno spazio vuoto.

  • Un motivo chiave per l’uso degli iframe nella pubblicità web è la sicurezza nel supporto incrociato dei domini, ma le prestazioni non sono perfette.

  • Gli iframe non sono visibili su molti dispositivi portatili.

  • Gli iframe sono noti per ridurre talvolta il posizionamento SEO.

Vantaggi e svantaggi dei tag JS:

  • Possiamo aggiungerli in seguito se qualcuno è interessato.

Offerta e domanda

Siamo nel 2020. Il numero di siti web che forniscono annunci agli inserzionisti è cresciuto in modo esponenziale dal 2000. L’offerta di annunci ha superato di gran lunga la domanda. Ciò significa che per la maggior parte dei siti, quelli che qui parlano di configurare annunci su Discourse, è improbabile che ottengano traffico pubblicitario premium a meno che non abbiano una forte domanda e un pubblico di nicchia consolidato.

Ogni appassionato di tecnologia e la sua sorella possono pubblicare annunci sui propri blog e forum nel 2020 e lo fanno. Ciò significa che l’offerta continuerà a superare la domanda di annunci display in futuro. La maggior parte dei siti di nicchia avrà difficoltà a generare entrate pubblicitarie da un nuovo sito finché non diventerà ben consolidato.

Discourse e crawler

Discourse non serve l’SPA ai crawler, il che significa che anche i crawler adbot non vedranno l’SPA e tutte le implicazioni di ciò non sono state “analizzate da terze parti in modo oggettivo” (da una terza parte indipendente), per quanto mi risulta.

Riassunto

Penso che la stragrande maggioranza dei nuovi utenti di Discourse che utilizzano Discourse come SPA JavaScript non genererà grandi entrate dalle reti di annunci display (come AdSense). Ciò è particolarmente vero nel 2020, dove i budget pubblicitari degli inserzionisti sono molto più piccoli a causa della pandemia. Inoltre, l’offerta è alta e la domanda è bassa.

Se pubblichi annunci display, avrai problemi su tutte le SPA a causa del modo in cui le pagine “non si ricaricano” e questo è un problema con i tag JS e i tag IFRAME; è necessario un codice plugin migliore per le SPA per ottimizzare tutti i tipi di tag di terze parti.

Chiusura

Non serviamo AdSense da molti anni e non abbiamo intenzione di farlo in futuro; quindi il punto su come AdSense ottiene il contesto è irrilevante per noi. Per gli altri, è meglio eseguire tag IFRAME funzionanti piuttosto che tirarsi i capelli cercando di combattere i problemi delle SPA con tag script di terze parti e mal di testa CORS, a mio parere.

Prima impara a strisciare, poi cammina. Cammina prima di correre.

Spero che questo aiuti.

Cordiali saluti.


PS: Scusa per eventuali errori di battitura, mia moglie mi aspetta alla porta e vuole andare a fare shopping prima che piova!

Questo non è per Google. Come discusso in precedenza, si tratta di unità pubblicitarie affiliate che non sono di Google, Amazon, ecc. Per Google, utilizzo già il plugin Adsense integrato. I miei annunci Google funzionano già e adattano l’annuncio all’argomento in base ai visitatori. Inoltre, posso controllare la categoria dell’annuncio tramite Adsense.

La mia domanda riguarda un annuncio affiliato statico che rimarrà sempre lo stesso. Pertanto, volevo utilizzare gli annunci interni (House ads), progettati proprio per questo scopo. Tuttavia, questo mi limita nella scelta della posizione in cui inserire l’unità pubblicitaria.

Attualmente, ho semplicemente utilizzato un iframe e lo ho posizionato nel footer del mio HTML del tema, il che funziona perfettamente. L’unico problema è che l’iframe viene visualizzato per tutti i gruppi di utenti, anche per quelli con un livello di fiducia elevato, mentre in precedenza potevo scegliere di non mostrare le unità pubblicitarie agli utenti con livello di fiducia 3 o superiore tramite il gestore degli annunci in Discourse.