顯示具有 標籤雲 標籤的文章。 顯示所有文章
顯示具有 標籤雲 標籤的文章。 顯示所有文章

2007年4月5日 星期四

在Blogspot部落格中加上標籤雲

想在部落格裡加上標籤雲的小裝置嗎!
黑輪找了很多地方,試了很多次,就是做不成功。原來是程式碼經過多方轉載,給弄壞啦!

為了避免我也弄壞了,請先參考原出處:Setup and configuration for New Blogger Tag Cloud / Label Cloud

先說在前頭:因為Html語法關係,你在畫面上看到的><>都是Html語法產生的,並非真正的字元符號。建議你處理時先複製貼在記事本裡,再複製貼到要修改的地方。以免出錯!

處理方式:

1.先在你的控制主頁→範本→修改HTML中 先下載完整範本備分。以免做壞了!


2.首先找到 ]]></b:skin>
的位置,先將下列這段樣式碼複製到他的前面。




/* Label Cloud Styles

----------------------------------------------- */

#labelCloud {text-align:center;font-family:arial,sans-serif;}

#labelCloud .label-cloud li{display:inline;background-image:none !important;padding:0
5px;margin:0;vertical-align:baseline !important;border:0 !important;}

#labelCloud ul{list-style-type:none;margin:0 auto;padding:0;}

#labelCloud a img{border:0;display:inline;margin:0 0 0 3px;padding:0}

#labelCloud a{text-decoration:none}

#labelCloud a:hover{text-decoration:underline}

#labelCloud li a{}

#labelCloud .label-cloud {}

#labelCloud .label-count {padding-left:0.2em;font-size:9px;color:#000}

#labelCloud .label-cloud li:before{content:"" !important}




3.接下來在 ]]></b:skin>
與 </head> 之間,貼上下列的Script程式碼。




<script type='text/javascript'>

// Label Cloud User Variables

var cloudMin = 1;

var maxFontSize = 20;

var maxColor = [0,0,255];

var minFontSize = 10;

var minColor = [0,0,0];

var lcShowCount = false;

</script>





4.再來是最複雜的地方了。往下很大一段距哩,找到 <b:widget id='Label1'
locked='false' title='Labels' type='Label'/>
這一段。

(如果你有勾選 展開小裝置範本,看到的會是一大段:從 <b:widget
......>
到 </b:widget>)。用下列的程式碼取代這一段。




<b:widget id='Label1' locked='false' title='這裡放標題'
type='Label'>

<b:includable id='main'>

<b:if cond='data:title'>

<h2><data:title/></h2>

</b:if>


<div class='widget-content'>

<div id='labelCloud'/>

<script type='text/javascript'>


// Don't change anything past this point -----------------

// Cloud function s() ripped from del.icio.us

function s(a,b,i,x){

if(a&gt;b){

var m=(a-b)/Math.log(x),v=a-Math.floor(Math.log(i)*m)

}

else{

var m=(b-a)/Math.log(x),v=Math.floor(Math.log(i)*m+a)

}

return v

}




var c=[];

var labelCount = new Array();

var ts = new Object;

<b:loop values='data:labels' var='label'>

var theName = &quot;<data:label.name/>&quot;;

ts[theName] = <data:label.count/>;

</b:loop>


for (t in ts){

if (!labelCount[ts[t]]){

labelCount[ts[t]] = new Array(ts[t])

}

}

var ta=cloudMin-1;

tz = labelCount.length - cloudMin;

lc2 = document.getElementById('labelCloud');

ul = document.createElement('ul');

ul.className = 'label-cloud';

for(var t in ts){

if(ts[t] &lt; cloudMin){

continue;

}

for (var i=0;3 > i;i++) {

c[i]=s(minColor[i],maxColor[i],ts[t]-ta,tz)

}

var fs = s(minFontSize,maxFontSize,ts[t]-ta,tz);

li = document.createElement('li');

li.style.fontSize = fs+'px';

li.style.lineHeight = '1';

a = document.createElement('a');

a.title = ts[t]+' Posts in '+t;

a.style.color = 'rgb('+c[0]+','+c[1]+','+c[2]+')';

a.href = '/search/label/'+encodeURIComponent(t);

if (lcShowCount){

span = document.createElement('span');

span.innerHTML = '('+ts[t]+') ';

span.className = 'label-count';

a.appendChild(document.createTextNode(t));

li.appendChild(a);

li.appendChild(span);

}

else {

a.appendChild(document.createTextNode(t));

li.appendChild(a);

}

ul.appendChild(li);

abnk = document.createTextNode(' ');

ul.appendChild(abnk);

}

lc2.appendChild(ul);

</script>


<noscript>

<ul>

<b:loop values='data:labels' var='label'>

<li>

<b:if cond='data:blog.url == data:label.url'>

<data:label.name/>

<b:else/>

<a expr:href='data:label.url'><data:label.name/></a>

</b:if>

(<data:label.count/>)

</li>

</b:loop>

</ul>

</noscript>

<b:include name='quickedit'/>

</div>


</b:includable>

</b:widget>




5.大功告成。

感謝諸多網站部落格,讓我多次嘗試總算成功啦!