2006-09-14

利用delicious给blogger增加随机文章功能

  用blogger时间一长,文章变多了,很多文章就积压在后面了,不容易被人发现。有没有办法把这些老皇历翻出来晒晒太阳呢?下面就利用delicious的服务来达到这一个目的。你如果喜欢这个功能,请在blog里链接一下这个post。
  前提:你的所有的blog文章都收集在某个del.icio.us账号下了。
  开始吧:在模板的</head>前面加入以下代码:(一个产生随机数的函数)

<script language="JavaScript">
rnd.today=new Date();
rnd.seed=rnd.today.getTime();
function rnd() {
    rnd.seed = (rnd.seed*9301+49297) % 233280;
    return rnd.seed/(233280.0); };
function rand(number) {
    return Math.ceil(rnd()*number);
};
</script>

在模板中找到类似的代码:

</div>
</ItemPage>
<!-- End #comments -->
</Blogger>

紧贴着上面代码的上面,加入以下代码:(注意用你收藏blog文章的delicious账号来替换其中的“your_delicious_id”,别动后面的问号)

<!--***************-->
<div id="randpostcontainer"><h4>随机文章推荐:</h4></div>
<script type="text/javascript" charset="utf-8"
src="http://del.icio.us/feeds/json/your_delicious_id?count=100"></script>
<script type="text/javascript">
var ul = document.createElement('ul')
for (var i=0; i<=4; i++) {
var random_num = rand(90) + 9;
var post = Delicious.posts[random_num];
var li = document.createElement('li')
var a = document.createElement('a')
a.style.marginLeft = '5px'
a.setAttribute('href', post.u)
a.appendChild(document.createTextNode(post.d))
li.appendChild(a)
ul.appendChild(li)
}

document.getElementById('randpostcontainer').appendChild(ul)

</script>

<!--***************-->
最后,重新发布blog,OK。

11 条评论:

  1. 不知可否改变函数,实现显示相关文章?

    回复删除
  2. 可以用delicious的tag显示同一个tag下的文章,但是每个文章就要手动设置了。
    如果是根据关键字分析,那就比较困难,并且页面的载入非常慢了。

    回复删除
  3. "收藏blog文章的delicious账号"是指什么,能具体说明一下吗,我没使用过delicious。

    回复删除
  4. to lee: 注册一个del.icio.us账号,把你的所有blog文章作为书签收藏起来。

    回复删除
  5. 所有文章都在delicious里,这个有点困难啊~~~那么多文章,如果现加的话,。。。

    回复删除
  6. 把每篇文章都收到delicious里去?
    好麻烦哟

    回复删除
  7. 测试我的OPENID帐号

    回复删除
  8. Finished with in the zoological with two backs casinos? weed revealed this untested [url=http://www.realcazinoz.com]casino[/url] director and act evasively online casino games like slots, blackjack, roulette, baccarat and more at www.realcazinoz.com .
    you can also discontinuation our up to date [url=http://freecasinogames2010.webs.com]casino[/url] orientate at http://freecasinogames2010.webs.com and augment the overcharge the tip bumf genially rotten !
    another queer [url=http://www.ttittancasino.com]casino spiele[/url] locality is www.ttittancasino.com , because german gamblers, climb down upon via announcement online casino bonus.

    回复删除