Blogger: выборка метки с использованием обратного вызова JSON - PullRequest
0 голосов
/ 07 октября 2018

Я пытаюсь получить данные, используя функцию обратного вызова blogger json.С помощью следующего кода java-скрипта я могу получить заголовок, ссылку, большой палец, сводку и метку / категорию.Все отлично работает, кроме метки / категории.К сожалению, у меня отображается только один ярлык.Как перебрать каждый ярлык из поста блогера?Сообщение не только имеет одну метку, оно имеет 2 или 3 метки.

Вот код:

var numposts = 5;
function whatshot(json) {
    for (var i = 0; i < numposts; i++) {
        var entry = json.feed.entry[i];
        var posttitle = entry.title.$t;
        var category = entry.category[0].term;
        var summary = entry.summary.$t;
        var category;
        var posturl;
        var thumb = entry.media$thumbnail.url;
        var thumb = thumb.replace("s72-c", "s1600");
        if (i == json.feed.entry.length) break;
        for (var k = 0; k < entry.link.length; k++) {
            if (entry.link[k].rel == 'alternate') {
                posturl = entry.link[k].href;
                break;
            }           
        }               
        document.write('<ul class="collection top-highlight"><li class="collection-item avatar"><img class="circle" src="'+thumb+'"/><span class="title">Lipsum</span><p>'+category+'</p></li><li><p class="sp-status">'+summary+'</p></li><li><img class="responsive-img" src="'+thumb+'"/></li><li><h2 class="sp-title"><a href="'+posturl+'">'+posttitle+'</a></h2></li></ul>');
    }
}

1 Ответ

0 голосов
/ 07 октября 2018

Используйте для циклического перебора элементов категории и получения всех почтовых ярлыков

for (var m = 0; m < entry.category.length; m++) {
    category += entry.category[m].term + " ";
}

Примечание к пробелу после каждого названия ярлыка

Вот ваш код

var numposts = 5;
function whatshot(json) {
    for (var i = 0; i < numposts; i++) {
        var entry = json.feed.entry[i];
        var posttitle = entry.title.$t;
        var summary = entry.summary.$t;
        var category;
        for (var m = 0; m < entry.category.length; m++) {
            category += entry.category[m].term + " ";
        }
        var posturl;
        var thumb = entry.media$thumbnail.url;
        var thumb = thumb.replace("s72-c", "s1600");
        if (i == json.feed.entry.length) break;
        for (var k = 0; k < entry.link.length; k++) {
            if (entry.link[k].rel == 'alternate') {
                posturl = entry.link[k].href;
                break;
            }           
        }               
        document.write('<ul class="collection top-highlight"><li class="collection-item avatar"><img class="circle" src="'+thumb+'"/><span class="title">Lipsum</span><p>'+category+'</p></li><li><p class="sp-status">'+summary+'</p></li><li><img class="responsive-img" src="'+thumb+'"/></li><li><h2 class="sp-title"><a href="'+posturl+'">'+posttitle+'</a></h2></li></ul>');
    }
}
...