2012-06-15 34 views
7

Có cách nào để sử dụng gdata api để truy xuất danh sách tất cả các nhãn trong một blogger không?truy xuất danh sách tất cả các nhãn trong blogger

Tôi cần tạo một menu dựa trên danh sách đó, nhưng không thể liệt kê tất cả các bài viết và nhận nó, vì nó là một blog bận và có hơn 2000 bài đăng.

Trả lời

1

Cách tôi tìm thấy đang sử dụng tiện ích riêng của Blogger có tên Nhãn. Nó in danh sách các nhãn và số lượng sử dụng của chúng trong một số danh sách không có thứ tự (ul) và các liên kết (a). Bạn có thể kéo các nhãn từ đó sau khi được nạp bằng javascript như sau:

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

cuối cùng, loại bỏ các Nhãn div yếu tố (<div class='widget Label' id='Label1'>)

0

Tôi không thấy phương pháp để nhận danh sách nhãn trong blog, nhưng bạn có thể truy xuất tất cả các bài đăng (https://developers.google.com/blogger/docs/2.0/json/reference/posts/ danh sách) và kiểm tra trường labels cho mỗi người trong số họ: https://developers.google.com/blogger/docs/2.0/json/reference/posts#resource

+0

Như tôi đã nói trong câu hỏi, tôi không thể làm điều đó vì có quá nhiều bài đăng. –

+0

Một vấn đề khác với điều này là Google không cho phép bạn truy xuất các bài đăng _all_ thông qua API của họ. Nếu bạn thử tham số maxResults của, ví dụ: 100, nó sẽ cung cấp cho bạn lỗi invalidValue thay thế. Một cái gì đó giống như 20 công trình tốt. – DanMan

3

Rất đơn giản, tôi cung cấp cho bạn hai cách

  1. Với API Javascript Trước tiên, bạn phải sử dụng:

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

    Thứ hai, bạn có thể sử dụng mã dưới đây để lấy lại nhãn

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

    Để biết thêm hướng dẫn, bạn có thể đọc từ http://www.threelas.com/2012/05/how-to-retrieve-posts-using-blogger.htmlhttp://www.threelas.com/2012/04/basic-blogger-javascript-api.html

  2. Với JSON với json, nếu bạn muốn tìm hiểu cách truy xuất danh sách nhãn, sử dụng đối tượng này

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

    để biết thêm hướng dẫn chi tiết, đọc từ http://www.threelas.com/2012/02/basic-blogger-json-feed-api.htmlhttp://www.threelas.com/2012/09/blogger-json-feed-with-jquery-ajax.html

9

Dưới đây là cách dễ dàng nhất để có được một danh sách các nhãn bằng cách sử dụng cuộc gọi 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> 

Chỉ cần sử dụng url blog của bạn.

+0

Đối với những người chỉ muốn danh sách, tôi đã sử dụng điều này để tạo [một JSFiddle trả về các thẻ cho bất kỳ blog cụ thể nào] (http://jsfiddle.net/Noumenon72/9X3yZ/8/). – Noumenon

+0

Cảm ơn bạn, công trình này! –

1

Widget cho máy chủ cùng một mục đích được cung cấp bởi chính các blogger.

enter image description here

Widget cung cấp tùy chọn khác nhau như -

  1. Bạn có thể hiển thị tất cả Labels hoặc chọn từ Danh sách hiện tại của bạn
  2. Bạn có thể sắp xếp các Labels theo bảng chữ cái hoặc bằng số lần nhãn đó là được sử dụng (tần số).
  3. Bạn có thể chọn hiển thị các danh sách này dưới dạng Danh sách hoặc dưới dạng đám mây (lộn xộn).

enter image description here

Bạn có thể xem cùng trong blog của tôi - Link

0

Đầu tiên thêm JQuery qua đoạn mã sau vào giao diện điều khiển.

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

// ... dành thời gian cho kịch bản để tải, sau đó gõ (hoặc xem dưới đây để lựa chọn chờ đợi phi)

jQuery.noConflict(); 

Khi bạn đang thực hiện với điều này chúng ta có thể tận dụng lợi thế của JQuery và nhận được danh sách các nhãn

Bây giờ những gì tôi đang làm sẽ làm việc cho Chủ đề Blogger Đáng chú ý và vừa được thêm Chủ đề cho blogger.

Thông thường trong các chủ đề này, bạn sẽ thấy Nhãn ở menu phía bên phải của trang.

Vì vậy, những gì bạn cần Nhấp vào Nhãn và nhấp vào Hiển thị thêm.

Bây giờ hãy mở Bảng điều khiển gỡ lỗi trình duyệt mở và khai báo và biến.

var str = ""; 

Bây giờ chạy hai mã dưới đây

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

tất cả các nhãn bạn sẽ nhận được trong dấu phẩy (;) tách ra định dạng.

Các vấn đề liên quan