【问题标题】:How to change this All post list code to list specific labels?如何更改此所有帖子列表代码以列出特定标签?
【发布时间】:2020-04-21 19:16:10
【问题描述】:

我正在使用这个脚本来显示我网站上的所有帖子。但现在我想更改此代码以显示特定标记的帖子。但我不知道该怎么做。我已经尽力了。而且我是编码新手。任何帮助都会非常感激

var startIndex = 1;
var maxResults = 150;
var allResults = [];
function sendQuery12()
{
   var scpt = document.createElement("script");
   scpt.src = "http://yoursite.com/feeds/posts/summary?alt=json&callback=processPostList12&start-index=" + startIndex + "&max-results=" + maxResults;
   document.body.appendChild(scpt);
}

function printArrayResults(root)
{ 
   //Sort Alphebetically
   allResults.sort(function(a, b){
        var a_string = a.children[0].textContent ;
        var b_string = b.children[0].textContent ;

 if(a_string < b_string) return -1;
 if(a_string > b_string) return 1;
 return 0;
   })

   var elmt = document.getElementById("postList12");
    for (index = 0; index < allResults.length; index++) {
         elmt.appendChild(allResults[index]);
    }
}

function processPostList12(root)
{   
  var elmt = document.getElementById("postList12");
   if (!elmt)
      return;

   var feed = root.feed;

   if (feed.entry.length > 0)
   {
      for (var i = 0; i < feed.entry.length; i++)
      {
         var entry = feed.entry[i];
         var title = entry.title.$t;
         var date = entry.published.$t
  
         for (var j = 0; j < entry.link.length; j++)
         {
            if (entry.link[j].rel == "alternate")
            {
               var url = entry.link[j].href;
               if (url && url.length > 0 && title && title.length > 0)
               {
                  var liE = document.createElement("li");
                  var a1E = document.createElement("a");
                  a1E.href = url;
                  a1E.textContent = title + " (" + date.substr(0,10) + ")";
                  liE.appendChild(a1E);
                  //elmt.appendChild(liE);
                  allResults.push(liE);
               }
               break;
            }
         }
      }
      if (feed.entry.length >= maxResults)
      {
         startIndex += maxResults;
         sendQuery12();
      } else {
         printArrayResults();
      }
   }
}
sendQuery12();
<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
<span style="color: blue;">&nbsp;<span style="font-size: x-small;">(All post)</span></span></div>
<div style="background-color: #fffad6; border: 0px solid BLACK;">
<center>
<script>function mbhTotalCount(json) {document.write(parseInt(json.feed.openSearch$totalResults.$t,10));}</script><div style="font: 20px Domestic Manners;">
<span style="color: green;">Total:<b><span style="color: red;"> <script src="http://yoursite.com/feeds/posts/default?alt=json-in-script&amp;callback=mbhTotalCount"></script></span></b></span></div>
</center>
</div>
<hr />
<div>
<ul id="postList12"></ul>
</div>
</div>

【问题讨论】:

    标签: javascript html web blogger blogs


    【解决方案1】:
      for (var i = 0; i < feed.entry.length; i++)
      {
         var entry = feed.entry[i];
         var title = entry.title.$t;
         var date = entry.published.$t
    
         // This is an example, change to appropriate property
         var label = entry.label.$t
    
         for (var j = 0; j < entry.link.length; j++)
         {
            // desiredLabels = ['foo', 'bar', 'baz']
            if (!desiredLabels.includes(label) {
               continue;
            }
            if (entry.link[j].rel == "alternate")
            {
               var url = entry.link[j].href;
               if (url && url.length > 0 && title && title.length > 0)
               {
                  var liE = document.createElement("li");
                  var a1E = document.createElement("a");
                  a1E.href = url;
                  a1E.textContent = title + " (" + date.substr(0,10) + ")";
                  liE.appendChild(a1E);
                  //elmt.appendChild(liE);
                  allResults.push(liE);
               }
               break;
            }
         }
      }
    

    【讨论】:

      【解决方案2】:

      只需像这样将标签名称添加到您的代码中的网址

      scpt.src = "http://yoursite.com/feeds/posts/summary/-/LabelName?alt=json&callback=processPostList12&start-index=" + startIndex + "&max-results=" + maxResults;
      
      http://yoursite.com/feeds/posts/default/-/LabelName?alt=json-in-script&amp;callback=mbhTotalCount
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-25
        • 2019-07-17
        • 2013-06-30
        • 1970-01-01
        • 2013-11-01
        • 2020-03-28
        相关资源
        最近更新 更多