2012-06-15 3 views
7

Esiste un modo per utilizzare gdata api per recuperare l'elenco di tutte le etichette in un blogger?recupera l'elenco di tutte le etichette nel blogger

Ho bisogno di creare un menu basato su tale elenco, ma non posso semplicemente elencare tutti i post e ottenerlo, perché è un blog occupato e ha più di 2000 post.

risposta

1

Il modo in cui ho trovato era utilizzare il proprio gadget di Blogger chiamato Labels. Stampa l'elenco di etichette e il loro conteggio di utilizzo all'interno di alcuni elenchi non ordinati (ul) e collegamenti (a). Si può tirare le etichette da quella dopo che sono state caricate utilizzando JavaScript come segue:

$(".list-label-widget-content a").each(function (i, el) { 
    var labelText = $(el).text(); 
    // do what you want with the labels 
}); 

alla fine, rimuovere le etichette div elemento (<div class='widget Label' id='Label1'>)

0

Non vedo un metodo per ottenere l'elenco di etichette in un blog, ma è possibile recuperare tutti i post (https://developers.google.com/blogger/docs/2.0/json/reference/posts/ elenco) e controllare il campo labels per ognuno di essi: https://developers.google.com/blogger/docs/2.0/json/reference/posts#resource

+0

Come ho detto nella domanda, non posso farlo perché ci sono troppi messaggi. –

+0

Un altro problema con questo è che Google non ti permette di recuperare _all_ messaggi attraverso la loro API. Se provi un parametro maxResults di, ad esempio, 100, ti darà invece un errore Valore Valido. Qualcosa come 20 funziona bene. – DanMan

3

Molto semplice, io ti do due modi

  1. con JavaScript API In primo luogo, è necessario utilizzare:

    <script type="text/javascript" src="http://www.google.com/jsapi"></ script> <script type='text/javascript'>
    google.load("gdata", "1.x", { packages : ["blogger"] });
    </script>

    In secondo luogo, è possibile utilizzare il codice qui sotto per recuperare le etichette

    postRoot.entry.getCategories()[i].getTerm()

    Per ulteriori tutorial, potete leggere dal http://www.threelas.com/2012/05/how-to-retrieve-posts-using-blogger.html e http://www.threelas.com/2012/04/basic-blogger-javascript-api.html

  2. Con JSON con JSON, se si desidera scopri come recuperare l'elenco delle etichette, usa questo oggetto

    json.feed.entry[i].category[j].term

    per più particolare che tutorial, leggere da http://www.threelas.com/2012/02/basic-blogger-json-feed-api.html e http://www.threelas.com/2012/09/blogger-json-feed-with-jquery-ajax.html

9

Qui è il modo più facile per ottenere un elenco di etichette utilizzando la chiamata JSON:

<script> 
    function cat(json){ //get categories of blog & sort them 
     var label = json.feed.category; 
     var lst=[]; 
     for (i=0; i<label.length; i++){ 
      lst[i] = label[i].term ; 
     } 
     alert(lst.sort()); //use any sort if you need that 
    } 

</script> 

<script src="http://yourblog.blogspot.com/feeds/posts/summary?alt=json&max-results=0&callback=cat"></script> 

Basta usare il tuo blog URL.

+0

Per le persone che vogliono solo la lista, l'ho usato per creare [un JSFiddle che restituisce i tag per ogni blog] (http://jsfiddle.net/Noumenon72/9X3yZ/8/). – Noumenon

+0

Grazie, funziona! –

1

Widget per server lo stesso scopo è fornito dai blogger stessi.

enter image description here

Widget offre varie opzioni come -

  1. È possibile mostrare tutte le etichette o scegliere tra il tuo elenco esistente
  2. È possibile ordinare le etichette in ordine alfabetico o per numero di volte in cui etichetta è usato (frequenza).
  3. È possibile scegliere di visualizzarli come Elenco o come cloud (confusi).

enter image description here

Si può vedere lo stesso nel mio blog - Link

0

aggiungere prima le JQuery attraverso il seguente codice nella console.

var jq = document.createElement('script'); 
jq.src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"; 
document.getElementsByTagName('head')[0].appendChild(jq); 

// ... dare il tempo per lo script per caricare, quindi digitare (o vedi sotto per l'opzione non attesa)

jQuery.noConflict(); 

Una volta che si è fatto con questo siamo in grado di sfruttare la JQuery e ottieni l'elenco delle etichette

Ora quello che sto facendo funzionerà per il tema Blogger Notevole e il tema appena aggiunto per blogger.

Normalmente in questi temi verranno visualizzate le etichette nel menu di scelta rapida del menu di Google della pagina.

Quindi Cosa ti serve Clicca sull'etichetta e clicca su Mostra altro.

Ora Apri console di debug del browser e dichiarazione e variabile.

var str = ""; 

Ora eseguire i due codici di seguito

1. $('.first-items .label-name').each(function(){str = str + ", "+($(this).text())}) 
2. $('.remaining-items .label-name').each(function(){str = str + ", "+($(this).text())}) 
3. str 

tutte le etichette sarete entrare in virgola (;) separati formato.