Friday, October 12, 2007

Для блоггеров

Еще один выпуск стенгазеты: скрипт для построения облака тегов в blogger.com. Выглядит это так:

мы запрашиваем у blogger-а feed для нашего блога, заказывая вывод в json. И в качестве callback указываем нашу собственную функцию, в которой и выводим облако тегов. Как это выглядит в шаблоне:

<!-- здесь будет облако тегов -->
<div id="labelList"></div>

<!-- это callback -->
<script type="text/javascript">
//<![CDATA[
function listLabels(root){
var baseURL = '/search/label/';
var baseHeading = "Теги";
var llDiv = document.getElementById('labelList');
var entry = root.entry;
var h2 = document.createElement('h2');
h2.className = 'sidebar-title';
var h2t = document.createTextNode(baseHeading);
h2.appendChild(h2t);
llDiv.appendChild(h2);
var ul = document.createElement('ul');
ul.id = 'label-list';
var category = entry.category;
labelSort = new Array();
for(p in category){
labelSort[labelSort.length] = [category[p].term];
}
labelSort.sort();
for (var r=0; r < labelSort.length; r++){
var li = document.createElement('li');
var a = document.createElement('a');
a.href = baseURL + encodeURIComponent(labelSort[r]);
a.innerHTML = labelSort[r] + ' ';
li.appendChild(a);
ul.appendChild(li);
abnk = document.createTextNode(' ');
ul.appendChild(abnk);
}
llDiv.appendChild(ul);
}
//]]>
</script>

<!-- а здесь получаем fedd из блоггера, указав наш callback -->
<script type="text/javascript"
src="http://www.blogger.com/feeds/здесь_userId/blogs
/здесь_id_блога?alt=json-in-script&
callback=listLabels" ></script>

userId (это некоторое число) - код пользователя в Google. Можно посмотреть в своем View Profile. id для своего блога можно увидеть в панели управления - это также некоторое число.

Оригинальная идея (мы, по крайней мере, прочли там) - здесь

No comments: