2012-06-15 11 views
7

में सभी लेबलों की सूची पुनर्प्राप्त करें क्या ब्लॉगर में सभी लेबल की सूची पुनर्प्राप्त करने के लिए gdata api का उपयोग करने का कोई तरीका है?ब्लॉगर

मुझे उस सूची के आधार पर एक मेनू बनाने की आवश्यकता है, लेकिन बस सभी पोस्टों को सूचीबद्ध नहीं कर सकते हैं और इसे प्राप्त नहीं कर सकते हैं, क्योंकि यह एक व्यस्त ब्लॉग है और 2000 से अधिक पोस्ट हैं।

उत्तर

1

जिस तरह से मैंने पाया वह ब्लॉगर के अपने गैजेट का प्रयोग लेबल नामक था। यह कुछ अनियंत्रित सूचियों (उल) और लिंक (ए) के भीतर लेबल की सूची और उनकी उपयोग गणना को प्रिंट करता है। आपको लगता है कि से लेबल खींच सकते हैं के बाद वे जावास्क्रिप्ट का उपयोग करते हुए इस प्रकार लोड किए गए हैं:

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

, लेबल div तत्व (<div class='widget Label' id='Label1'>)

0

मुझे ब्लॉग में लेबल की सूची प्राप्त करने के लिए कोई तरीका नहीं दिखाई देता है, लेकिन आप सभी पोस्ट पुनर्प्राप्त कर सकते हैं (https://developers.google.com/blogger/docs/2.0/json/reference/posts/ सूची) और उनमें से प्रत्येक के लिए labels फ़ील्ड की जांच करें: https://developers.google.com/blogger/docs/2.0/json/reference/posts#resource

+0

जैसा कि मैंने सवाल में बताया था, मैं ऐसा नहीं कर सकता क्योंकि बहुत सारी पोस्ट हैं। –

+0

इसके साथ एक और समस्या यह है कि Google आपको अपने एपीआई के माध्यम से _all_ पोस्ट पुनर्प्राप्त करने नहीं देता है। यदि आप maxResults पैरामीटर का प्रयास करते हैं, तो कहें, 100, यह आपको इसके बजाय एक अवैध वैल्यू त्रुटि देगा। कुछ काम करता है ठीक है। – DanMan

3

बहुत ही सरल निकालने के लिए, मैं आप दो तरह से देना

  1. Javascript API पहले साथ

    , आप का उपयोग करना चाहिए:

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

    दूसरे, आप लेबल

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

    अधिक ट्यूटोरियल के लिए पुनः प्राप्त करने के लिए नीचे दिए गए कोड का उपयोग कर सकते हैं, तो आप, json साथ http://www.threelas.com/2012/05/how-to-retrieve-posts-using-blogger.html और http://www.threelas.com/2012/04/basic-blogger-javascript-api.html

  2. से पढ़ सकते हैं JSON के साथ यदि आप चाहते हैं लेबल की सूची को पुनर्प्राप्त करने का तरीका जानें, इस ऑब्जेक्ट का उपयोग करें

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

    अधिक विस्तार ट्यूटोरियल के लिए, http://www.threelas.com/2012/02/basic-blogger-json-feed-api.html और http://www.threelas.com/2012/09/blogger-json-feed-with-jquery-ajax.html

9

से पढ़ने के यहाँ सबसे आसान तरीका 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> 

बस अपने ब्लॉग यूआरएल का उपयोग करें।

+0

जो लोग सिर्फ सूची चाहते हैं, उनके लिए मैंने [जेएसफ़िल्ड जो किसी भी दिए गए ब्लॉग के लिए टैग लौटाता है] (http://jsfiddle.net/Noumenon72/9X3yZ/8/) बनाने के लिए इसका इस्तेमाल किया। – Noumenon

+0

धन्यवाद, यह काम करता है! –

1

उसी उद्देश्य के लिए सर्वर का विजेट ब्लॉगर्स द्वारा ही प्रदान किया जाता है।

enter image description here

विजेट जैसे विभिन्न विकल्प प्रदान करता है -

  1. आप या तो सभी लेबल दिखाएं या अपने मौजूदा सूची से चुन सकते हैं
  2. आप लेबल सॉर्ट कर सकते हैं वर्णानुक्रम या बार की संख्या से उस लेबल है प्रयुक्त (आवृत्ति)।
  3. आप इन्हें सूची के रूप में या क्लाउड (जुम्बल) के रूप में प्रदर्शित करना चुन सकते हैं।

enter image description here

आप अपने ब्लॉग में एक ही देख सकते हैं - Link

0

पहले कंसोल में निम्न कोड के माध्यम से JQuery जोड़ें।

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 का लाभ ले सकते के लिए समय देना और लेबल

अब मैं जो कर रहा हूं वह ब्लॉगर थीम के लिए उल्लेखनीय और ब्लॉगर के लिए जोड़ा गया थीम के लिए काम करेगा।

आम तौर पर इन विषयों में आप पृष्ठ के मेनू मेनू के अधिकारों में लेबल देखेंगे।

तो आपको इसकी क्या ज़रूरत है लेबल पर क्लिक करें और अधिक दिखाएं पर क्लिक करें।

अब ब्राउज़र डिबगिंग कंसोल खोलें और घोषित करें और चर।

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 

दोनों कोड चलाने (;) प्रारूप अलग कर दिया।

संबंधित मुद्दे