Incorporare un elenco di argomenti Discourse in un altro sito

Cosa si potrebbe modificare per specificare più categorie?

2 Mi Piace

Devo aspettarmi che funzioni se l’“altro sito” è in esecuzione localmente su http://localhost:8000 e il sito Discourse è non locale su un sottodominio https? O anche l’“altro sito” dovrebbe essere su un dominio “vero”?

Il file dello script sembra essere recuperato correttamente e non vedo errori nella console JS. L’“altro sito” è un sito Gatsby/React; sto aggiungendo l’elemento <d-topics-list> una volta che la pagina è stata renderizzata nel browser tramite useEffect, e nel DOM live sembra corretto a me (vedi screenshot)…

Screen Shot 2021-05-19 at 9.21.08 AM

2 Mi Piace

Passare da https a http di solito causa problemi, ma puoi confermarlo aprendo la console del browser F12.

4 Mi Piace

Aha, il mio problema sembra essere che React sta interferendo con il DOM lato client, resettandolo per farlo corrispondere al DOM renderizzato dal server (con l’elemento grezzo <d-topics-list>) immediatamente dopo che lo script embed-topics.js ha inserito l’iframe.

5 Mi Piace

Qualcuno sa di cosa si tratta??

Ultima build di Discourse
Ultimo browser Chrome

È stato rifiutato l’inquadratura di ‘https://vapingcommunity.co.uk/’ perché un antenato viola la seguente direttiva della Content Security Policy: “frame-ancestors ‘self’”.

3 Mi Piace

Molto probabilmente correlato a questa modifica: (cc @falco)

Hai registrato il tuo sito principale in Amministrazione > Personalizza > Incorporamento?

7 Mi Piace

Bingo! Non ho visto quel cambiamento, ora funziona tutto perfettamente di nuovo, grazie mille :wink:

5 Mi Piace

Qualcuno riceve errori di tipo “Refused to frame”?

Ho abilitato gli argomenti di incorporamento e ricevo

Refused to frame 'https://myforumurl.com/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self'".
1 Mi Piace

Stai cercando di incorporare l’intero forum in un altro sito? Non funzionerà.

L’OP descrive come incorporare elenchi di argomenti su un altro sito, ma non è possibile eseguire Discourse in un iframe per le ragioni che descrivi.

3 Mi Piace

No, solo gli argomenti più recenti. Ho seguito le istruzioni per abilitare l’argomento di incorporamento nelle impostazioni e ho copiato gli script nell’intestazione e nel corpo del sito host. Non sono sicuro se l’errore sia causato dal fatto che il sito di sviluppo su cui lo sto testando non ha SSL.

3 Mi Piace

Questo è dovuto alle impostazioni di sicurezza del tuo sito, non da parte di Discourse.

4 Mi Piace

Ci ho lavorato. Non avevo letto attentamente le istruzioni :slight_smile:

4 Mi Piace

Quindi questo sta funzionando alla grande, il mio unico problema è che Google sta indicizzando l’URL dell’iframe stesso

Ad esempio, ho argomenti Discourse incorporati in questa pagina

Google sembra indicizzare la pagina sopra OK… ma sta anche indicizzando gli URL sottostanti che vorrei correggere

https://discuss.flynumber.com/embed/topics?discourse_embed_id=de-zse3f2nh3&template=complete&search=Romania&per_page=5

C’è un modo per ottenere un meta noindex sulle pagine sopra? O ancora meglio, ottenere questo nuovo tag di Google sulle pagine sopra

5 Mi Piace

Interessante, grazie per il suggerimento @nader.. dovremmo aggiungere questo nuovo tag all’ <iframe /> per impostazione predefinita @falco, o renderlo un’impostazione?

4 Mi Piace

Questo dovrebbe bastare

6 Mi Piace

Volevo solo segnalare che questo sta servendo ' noindex, indexifembedded ' a tutti i crawler, anche se è solo Google che supporta il nuovo indexifembedded

Questo dovrebbe probabilmente cambiare in x-robots-tag: googlebot:noindex, indexifembedded

O essere rimosso completamente poiché il noindex potrebbe avere conseguenze impreviste su altri motori di ricerca.

1 Mi Piace

Dubito che la parola aggiuntiva sia particolarmente dannosa per altri crawler. Hai prove che sia così, ad esempio altri crawler dicono ai siti di non usare indexifembedded?

(Il più delle volte, quando si scrive codice in questo modo, si tendono a ignorare i tag HTML che non ci si aspetta, questa è una sorta di impostazione predefinita per HTML.)

3 Mi Piace

Non vedo questo, ma nella pagina di Google dice:

Attualmente, solo Google supporta il tag indexifembedded.

Concordo sul fatto che ignoreranno indexifembedded, la mia preoccupazione però è che noindex causi problemi SEO per la pagina su cui si trova.

Quindi, lasciamo che Bing esegua il crawling di un URL che ha embed di argomenti. Esegue il crawling di quell’URL e anche dell’URL di embed

/embed/topics?discourse_embed_id=XXXXXX....

Se quanto sopra è noindex, temo che danneggi la SEO della pagina che presenta l’embed dell’argomento.

Tutto questo è risolto usando x-robots-tag: googlebot:noindex, indexifembedded, ma si potrebbe capire perché Discourse potrebbe non voler favorire 1 motore di ricerca. Speriamo che diventi uno standard, ma per ora sembra che sia solo Google.

3 Mi Piace

Ciao! Volevo solo chiedere se non c’è ancora un modo integrato per far aprire gli argomenti incorporati con target="_blank" invece di target="_parent"

3 Mi Piace

Sono solo curioso del motivo per cui riesco a visualizzare solo 1 argomento? Qualcuno lo sa?

Ecco la categoria (che ha molti argomenti): Amazon Specific - eCommerce Sellers Forum

E il codice di incorporamento:
<d-topics-list discourse-url="https://forum.flowster.app" template="complete" top_period="all" category="17" per-page="5"></d-topics-list>

Ma appare solo un argomento:

:thinking:

2 Mi Piace