ปุ่ม "สารบัญ" อยู่ตำแหน่งบนขวาสุดใช้เพื่อดูหัวข้อบทความทั้งหมดของบล็อกนี้ครับ
Loading...

วันอาทิตย์ที่ 9 สิงหาคม พ.ศ. 2552

การเปลี่ยนป้ายกำกับ(Lable) ให้เป็น Tags Cloud

Tags Cloud คือ การปรับเปลี่ยนการแสดงผลชื่อเรื่องของป้ายกำกับ(Lable) จากแนวตั้งเป็นแนวนอนเรียงกันจากซ้ายไปขวาและตั้งขนาดตัวอักษรตามจำนวนเรื่องที่มีอยู่ในป้ายกำกับ ซึ่งมีวิธีการปรับเปลี่ยนตามขั้นตอนดังนี้


ขั้นตอนที่ 1 ไปที่เมนู รูปแบบ|องค์ประกอบหน้า(Layout|Page Elements) และคลิ๊กไปที่ "เพิ่ม Gadget"(Add a Gadget) แล้วเลือก Gadget ป้ายกำกับ(Lable) แล้ววาง Gadget ป้ายกำกับไว้ในตำแหน่งที่ต้องการเสร็จแล้วทำการบันทึกแม่แบบ

ขั้นตอนที่ 2 ไปที่เมนู รูปแบบ|แก้ไข HTML(Layout|Edit HTML) แล้วทำการขยายแม่แบบเครื่องมือ(Expand Widget Templates)

ขั้นตอนที่ 3 ค้นหาคำว่า <b:widget id='Label1 แล้วจะพบโค๊ด <b:widget id='Label1' locked='false' title='Labels' type='Label'/> ให้ทำการลบโค๊ดจนถึงบรรทัด </b:widget>

ขั้นตอนที่ 4 นำโค๊ดข้างล่างนี้ไปวางไว้บริเวณส่วนที่เราลบในขั้นตอนที่ 3
<b:widget id='Label1' locked='false' title='Tags' type='Label'>
<b:includable id='main'>
<b:if cond='data:title'>
<h2><data:title/></h2>
</b:if>
<div class='widget-content' style='text-align: justify;'>
<script type='text/javascript'>
/*
Simple Blogger Tag Cloud Widget
by Raymond May Jr.
http://www.compender.com
Released to the Public Domain
*/

//Settings / Variables
var max = 150; //max css size (in percent)
var min = 70; //min css size (in percent)
var showCount = false; // show counts? true for yes, false for no
var minCount = 1; // what is the minimum count for a tag to be shown? 1 for all


//Begin code:
var range = max - min;

//Build label Array
var labels = new Array();
<b:loop values='data:labels' var='label'>
labels.push(&quot;<data:label.name/>&quot;);
</b:loop>

//URLs
var urls = new Array();
<b:loop values='data:labels' var='label'>
urls.push(&quot;<data:label.url/>&quot;);
</b:loop>

//Counts
var counts = new Array();
<b:loop values='data:labels' var='label'>
counts.push(&quot;<data:label.count/>&quot;);
</b:loop>

//Number sort funtion (high to low)
function sortNumber(a, b)
{
return b - a;
}

//Make an independant copy of counts for sorting
var sorted = counts.slice();

//Find the largest tag count
var most = sorted.sort(sortNumber)[0];

//Begin HTML output
for (x in labels)
{
if(x != &quot;peek&quot; &amp;&amp; x != &quot;forEach&quot; &amp;&amp; counts[x] >= minCount)
{
//Calculate textSize
var textSize = min + Math.floor((counts[x]/most) * range);
//Show counts?
if(showCount)
{
var count = &quot;(&quot; + counts[x] + &quot;)&quot;;
}else{
var count = &quot;&quot;;
}
//Output
document.write(&quot;<span style='font-size:&quot; + textSize + &quot;%'><a href='&quot; + urls[x] + &quot;' style='text-decoration:none;'>&quot; + labels[x] + count + &quot;</a></span> &quot; );
}
}
</script>
</div>
</b:includable>
</b:widget>


ขั้นตอนที่ 5 ทำการบันทึกแม่แบบ แล้วดูผล

หมายเหตุ
* ถ้าต้องการเปลี่ยนหัวข้อ(Title) จาก Tags เป็น Tags Cloud ก็ให้ไปแก้ไขที่คำว่า Tags ตัวสีแดงในโค๊ดหรือเป็นคำอื่น ๆ ที่ต้องการ
* ขนาดตัวอักษรของ Tags สามารถตั้งค่าได้ด้วยคำสั่ง
var max = 150; //max css size (in percent)
var min = 70; //min css size (in percent)
* สำหรับบล็อกของผมเองจะใช้ 2 ป้ายกำกับ โดยให้แสดงแบบปรกติและแบบ Tags โดยตัวที่ใช้แสดงแบบ Tags ให้ค้นหาคำว่า
<b:widget id='Label2' จะแำก้ไปที่ Label2 แทน ต้องลองดูว่า Label ที่เราเพิ่มไปเป็น 1 หรือ 2 ซึ่งจะให้ผลดังรูปข้างล่างนี้

0 ความคิดเห็น:

 
TopBottom