получить список всех ярлыков в блоггере

Есть ли способ использовать gdata api для получения списка всехlabels в блоггере?

Мне нужно создать меню на основе этого списка, но я не могу просто перечислить все сообщения и получить его, потому что это загруженный блог и имеет более 2000 сообщений.

Ответы на вопрос(6)

enter image description here

Виджет предоставляет различные варианты, такие как -

You can either show all Labels or choose from your existing List You can sort the Labels alphabetically or by number of times that label is used (frequency). You can choose to display these as a List or as a cloud (jumbled).

enter image description here

Вы можете увидеть то же самое в моем блоге -Ссылка на сайт

но вы можете получить все сообщения (https://developers.google.com/blogger/docs/2.0/json/reference/posts/list) и проверитьlabels поле для каждого из них:https://developers.google.com/blogger/docs/2.0/json/reference/posts#resource

 24 апр. 2013 г., 12:59
Другая проблема заключается в том, что Google не позволяет вам получитьall сообщения через их API. Если вы попробуете параметр maxResults, скажем, 100, он вместо этого выдаст вам ошибку invalidValue. Что-то вроде 20 работает нормально.
 Johnny Everson16 июн. 2012 г., 01:45
Как я сказал в этом вопросе, я не могу этого сделать, потому что сообщений слишком много.
Решение Вопроса

Метки". Он печатает список меток и их счет использования в некоторых неупорядоченных списках (ul) и ссылках (a). Вы можете извлечь метки из этого после их загрузки, используя JavaScript следующим образом:

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

в конце удалите элемент Labels div (<div class='widget Label' id='Label1'>)

<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>

Просто используйте ваш блог URL.

 06 февр. 2016 г., 11:41
Спасибо, это работает!
 20 апр. 2014 г., 12:36
Для людей, которые просто хотят список, я использовал это, чтобы сделатьa JSFiddle that returns the tags for any given blog.

With Javascript API First, you must use:

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

Second, you can use the code below to retrieve the labels

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

For more tutorials, you can read from http://www.threelas.com/2012/05/how-to-retrieve-posts-using-blogger.html and http://www.threelas.com/2012/04/basic-blogger-javascript-api.html

With JSON with json, if you want to learn how to retrieve the list of labels, use this object

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

for more detail tutorials, read from http://www.threelas.com/2012/02/basic-blogger-json-feed-api.html and http://www.threelas.com/2012/09/blogger-json-feed-with-jquery-ajax.html

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);

// ... даем время загрузки скрипта, затем набираем (или смотрите опцию без ожидания)

   jQuery.noConflict();

Как только вы закончите с этим, мы можем воспользоваться JQuery и получить список меток

Теперь то, что я делаю, будет работать для Blogger Theme Notable и недавно добавленной темы для блоггеров.

Обычно в этих темах вы увидите ярлыки в меню правого переключателя страницы.

Так что вам это нужно Нажмите на ярлык и нажмите Показать больше.

Теперь откройте консоль отладки браузера и объявите переменную.

var str = "";

Теперь запустите два кода ниже

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

все метки, которые вы получите, будут разделены запятыми (;).

Ваш ответ на вопрос