2015-12-07 11 views
9

Ho un sito di nodo polimerico su cui ho lavorato e non riesco a capire come includere meta tag dinamici e tag Open Graph. Jquery non funzionerà e nessuno dei due utilizzerà la polimerica api per aggiungere un nodo perché aggiungerà tutti i tag dopo il caricamento della pagina e Facebook non sarà in grado di leggere i tag. I crawler di Google rendono la pagina, ma sarebbe meglio se potessi impostare la descrizione nell'intestazione.Come impostare tag Meta dinamici e tag Open Graph in polimero?

<html> 
    <head> 
    <meta name="description" content="description goes here" /> 
    <meta property="og:title" content="title"/> 
    </head> 
    <body> 
    <group-pages id="grouppages" is="dom-bind"></group-pages> 
    </body> 
</html> 

grouppages imposta i dati e utilizza un servizio per compilare la pagina basata fuori l'url, ma quello che non riesco a scoprire è come cambiare i meta tag a seconda della pagina.

Qualcuno ha qualche idea?

Un pensiero è stato ottenere informazioni lato server e inviarlo a polimeri ma non sono ancora sicuro se questo è possibile tra nodo e polimero.

+0

Questo [risposta] (http://stackoverflow.com/questions/5776567/facebook-open-graph-not-clearing-cache/21468084#21468084) è stato il migliore che ho trovato! – Igonaf

risposta

2

E 'sicuramente un problema aperto, e si tratta di un modo per generare meta tag sul lato client, che si tratti di polimeri o di qualsiasi altro codice front-end.

Può essere superato solo se i crawler eseguono JS. Maggio 2014 Google started doing so. D'altra parte, per quanto ne so, Facebook non si è ancora mosso in questa direzione.

Si potrebbe voler controllare queste altre due risposte per avere un quadro completo:

Ad oggi, l'unico modo affidabile al 100% è per il server per intercettare i crawler e specificamente renderizzare il contenuto per loro prima di inviare la risposta. Questo è anche conosciuto come isomorphic JavaScript. Ci sono già alcuni strumenti utili là fuori a sostegno di tali compiti, come Prerender.

Spero che questo aiuti! Cheers

0

Se si ospita l'app Polymer con Firebase, è possibile eseguire il prerender del file index.html con una funzione Firebase http trigger.

exports.host = functions.https.onRequest((req, res) => { 
    // replace og-tags in the index.html file and return it 
}); 

Vedi this post per maggiori informazioni.