
Речь пойдет о небольшом, но, тем не менее, достаточно интересном скрипте по выводе любой случайной статьи блога по клику. Не могу ничего знать о надобности этой плюшки в жизни вашего блога, но несомненное ее преимущество – это неприхотливость расположения и бесподобно малая занимаемая площадь. Дабы совсем не ударяться в геометрию, привожу готовый пример работы скрипта случайной статьи, на который вы можете взглянуть в этом блоге в колонке справа.
По клику на ссылку такого вида, читатель попадает на случайную статью блога и вкушает новое полезное знание, предоставленное анархическим способом.
Сам виджет выводится непосредственно участком кода:
a href="#random" onclick="feelingLucky()" title="Случайная статья"><b>Случайная статья</b></a>который нужно расположить в том месте блога, где должна отображаться ссылка. Например: с помощью гаджета HTML/JavaScript; в тело сообщения, во вкладке “Изменить HTML”; либо непосредственно в шаблоне блога, допустим, после строки <data:post.body/> для отображения внизу сообщения. При наличии минимальных знаний HTML и CSS можно чуть приукрасить одинокую голую ссылку. Текст всплывающей подсказки title вы можете изменить на свое усмотрение, также как и выводимый текст.
Другая часть кода, непосредственно скрипт вывода ссылки на случайную статью блога, размещается в теле шаблона. Проследуйте Дизайн > Изменить HTML (можно не отмечать “Расширить шаблоны виджетов”) и найдите в шаблоне участок кода </head>.
Прямо перед ним разместить скрипт:
<script type='text/javascript'>
//<![CDATA[
function showLucky(root){
var feed = root.feed;
var entries = feed.entry || [];
var entry = feed.entry[0];
for (var j = 0; j < entry.link.length; ++j) {
if (entry.link[j].rel == "alternate") {
window.location = entry.link[j].href;
}
}
}
function fetchLuck(luck){
script = document.createElement('script');
script.src = '/feeds/posts/summary?start-index='+luck+'&max-results=1&alt=json-in-script&callback=showLucky';
script.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(script);
}
function readLucky(root){
var feed = root.feed;
var total = parseInt(feed.openSearch$totalResults.$t,10);
var luckyNumber = Math.floor(Math.random()*total);
luckyNumber++;
fetchLuck(luckyNumber);
}
function feelingLucky(){
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = '/feeds/posts/summary?max-results=0&alt=json-in-script&callback=readLucky';
document.getElementsByTagName('head')[0].appendChild(script);
}
//]]>
</script>
Сохраните шаблон и проверьте установленный виджет. При правильной установке в блоге появится та самая ссылка с вашим текстом, в результате клика на которую рискнувшему посетителю будет предоставлена случайная статья из блога.
















