Hiển thị các bài đăng có nhãn Customize Template. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Customize Template. Hiển thị tất cả bài đăng

Thay tiện ích Blog Posts bằng một tiện ích mới

Người đăng: buonkhongem on Chủ Nhật, 27 tháng 3, 2011

Sau khi tổng hợp ý kiến thắc mắc của một số bạn đọc, Bloggerism chú ý đến một vấn đề rất quan trọng đó là: Một số blogspot gặp lỗi khi cài đặt các thuật phân trang, theo đó số bài đăng không hiển thị đúng trên trang chính, mặc dù đã cài đặt đúng số bài đăng được hiển thị trên trang chính trong tiện ích Blog Posts. Qua quá trình nghiên cứu, Blogger tìm ra mấu chốt của vấn đề. Đó là do tiện ích Blog Posts (thường có id là Blog1 trong Template) đã bị hỏng do quá trình chỉnh sửa HTML trong Template.



Bây giờ bạn có thể xử lý điều này thật dễ dàng bằng cách thay tiện ích Blog Posts bằng một tiện ích mới. Xin lưu ý việc thay tiện ích mới này cũng sẽ xóa bỏ những thay đổi liên quan đến Blog Posts, ví dụ như Auto Readmore. Tuy nhiên, những thủ thuật đó bạn có thể cài đặt lại, còn tiện hơn việc phải thay lại cả Template.

Để thực hiện điều này, bạn hãy thực hiện như sau. Đăng nhập Blogger, vào Design >> Edit HTML (không chọn Expand Widget Templates).

Tìm đến dòng code như bên dưới:

<b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog'/>

Thay id Blog1 thành Blog2. Nhấn nút SAVE TEMPLATE là được. Công việc này quả thực quá đơn giản, thay tiện ích Blog Posts (Blog1) đã bị hỏng bằng một tiện ích hoàn toàn mới (Blog2). Lúc lưu Template, bạn sẽ được hỏi có giữ lại tiện ích Blog1 hay là xóa nó đi, bạn hãy chọn Delete Widget để xóa nó.

Lúc này tiện ích các bài đăng trên blog đã chuyển sang dạng mặc định với chức năng hoạt động bình thường.
More about

Tạo thêm phần Crosscol dưới phần Header

Người đăng: buonkhongem on Chủ Nhật, 23 tháng 1, 2011

Ở một số Template của Blogger có thể thấy dưới phần Header là một thành phần bố trí một tiện ích Feature có hiệu ứng slide để tạo sự nổi bật cho blog. Thành phần đó là crosscol. Thông thường phần crosscol chỉ có một cột. Và phần này có thể được điều chỉnh để chia thành hai cột và có thể thêm một cột ở dưới hai cột này.



1. Thêm Crosscol phía dưới phần Header (trên phần Blog Posts).

Đăng nhập Blogger, vào Design >> Edit HTML.

a. Đối với các Template dạng Layout. Tìm dòng <div id='content-wrapper'> và đặt trước nó với đoạn code bên dưới.

<div id='crosscol-wrapper' style='text-align:justify'>
<b:section class='crosscol' id='crosscol' showaddelement='yes'/>
</div>

b. Riêng đối với các Template mới nhất sẵn có của Blogger (như mẫu Simple) thì đã có sẳn phần Crosscol và code của nó như sau:

<div class='region-inner tabs-inner'>
<b:section class='tabs' id='crosscol' maxwidgets='1' showaddelement='yes'/>
<b:section class='tabs' id='crosscol-overflow' showaddelement='no'/>
</div>

2. Chia phần Crosscol thành hai cột.
a. Đối với Template dạng Layout. Thay đoạn code ở phần 1.a bằng đoạn code bên dưới.

<div id='crosscol-wrapper' style='text-align:justify'>
<b:section class='crosscol' id='crosscol-left' preferred='yes' showaddelement='yes'/>
<b:section class='crosscol' id='crosscol-right' preferred='yes' showaddelement='yes'/>
<div style='clear: both;'/>
</div>

b. Đối với các Template mới nhất sẵn có của Blogger thì thay đoạn code ở phần 1.b bằng đoạn code bên dưới.

<div class='region-inner tabs-inner'>
<b:section class='tabs' id='crosscol-left' maxwidgets='' showaddelement='yes'/>
<b:section class='tabs' id='crosscol-right' showaddelement='yes'/>
<div style='clear: both;'/>
</div>

3. Thêm một thành phần Crosscol có hai cột dưới một Crosscol có sẵn.
a. Đối với Template dạng Layout.
Thay đoạn code ở phần 1.a bằng đoạn code bên dưới.

<div id='crosscol-wrapper' style='text-align:justify'>
<b:section class='crosscol' id='crosscol' maxwidgets='1' showaddelement='yes'/>
<b:section class='crosscol' id='crosscol-left' maxwidgets='' showaddelement='yes'/>
<b:section class='crosscol' id='crosscol-right' showaddelement='yes'/>
<div style='clear: both;'/>
</div>

b. Đối với Template mới nhất sẵn có của Blogger.
Thay đoạn code ở phần 1.b bằng đoạn code sau đây.

<div class='region-inner tabs-inner'>
<b:section class='tabs' id='crosscol' maxwidgets='1' showaddelement='yes'/>
<b:section class='tabs' id='crosscol-left' maxwidgets='' showaddelement='yes'/>
<b:section class='tabs' id='crosscol-right' showaddelement='yes'/>
<div style='clear: both;'/>
</div>

Đối với các mục 2 và 3 thì cần phải thêm code CSS.

Đối với mục 2.a và 3.a thì thêm đoạn code CSS sau đây vào trước dòng ]]></b:skin>.

#crosscol-left {width:40%;display:inline-block;_float:left;}
#crosscol-right {width:40%;display:inline-block;float:right;padding: 15px}
#crosscol-right .widget {margin:0;}
body#layout #crosscol-left {width: 50%; float: left;}
body#layout #crosscol-right {width: 50%; float: right;}

Đối với mục 2.b và 3.b thì thêm đoạn code sau đây vào trước dòng ]]></b:skin>.

#crosscol-left {width:40%;display:inline-block;_float:left;}
#crosscol-right {width:40%;display:inline-block;float:right;padding: 15px}
#crosscol-right .widget {margin:0;}

Sau đó đặt trước dòng ]]</b:template-skin> với đoạn code bên dưới.

#layout #crosscol-left {width: 50%; float: left;}
#layout #crosscol-right {width: 50%; float: right;}

Lưu Template là OK.

* Giải đáp yêu cầu riêng của bạn BB từ trang Baoblog.net.

Bạn BB yêu cầu được tôi xử lý giúp, thêm một cột ngang dưới phần Feature Content (slide) trên blog của bạn ấy. Quả thật chắc chắn bạn ấy có vọc cả tháng cũng không thể nào thêm được một cột như thế bởi vì Template này được design rất khác biệt so với những Template thông thường.

Để thêm một cột ngang có 3 phần bằng nhau (như các mục TIN TỨC – XÃ HỘI – PHÓNG SỰ) dưới phần Feature Conent thì bạn BB phải thực hiện như sau.

Bước 1. Đăng nhập Blogger, vào Design >> Edit Template, chọn Expand Widget Templates.

Tìm dòng <!--end: contentwide--> và đặt sau nó với đoạn code bên dưới.

<div id="contentwide2">
<div style="padding-left: 0pt;" class="catbox left">
<script>
document.write('&lt;div class=&quot;category&quot;&gt;&lt;a href=&quot;/search/label/'+label11+'?max-results=10&quot;&gt;'+Title11+'&lt;/a&gt; &lt;/div&gt;');
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/&quot;+label1+&quot;?max-results=&quot;+numposts+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
<!--end: catbox-->

<div class="catbox left">
<script>
document.write('&lt;div class=&quot;category&quot;&gt;&lt;a href=&quot;/search/label/'+label12+'?max-results=10&quot;&gt;'+Title12+'&lt;/a&gt; &lt;/div&gt;');
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/&quot;+label2+&quot;?max-results=&quot;+numposts+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
<!--end: catbox-->

<div style="padding-right: 0pt; border-right: 0pt none;" class="catbox left">
<script>
document.write('&lt;div class=&quot;category&quot;&gt;&lt;a href=&quot;/search/label/'+label13+'?max-results=10&quot;&gt;'+Title13+'&lt;/a&gt; &lt;/div&gt;');
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/&quot;+label3+&quot;?max-results=&quot;+numposts+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
<!--end: catbox-->
</div>
<!--end: contentwide2-->

Bước 2. Đặt đoạn code sau đây vào trước dòng ]]></b:skin>.

#contentwide2{background:#FFF;float:left;width:940px;margin:5px 0 0;padding:10px}
#contentwide2 h2{margin:5px 0;font-size:12px;font-weight:bold}
#contentwide2 ul{margin:10px;padding:10px;border-top:1px dashed #CCC}
#contentwide2 li{background:#FFF url(http://bit.ly/hGi23S) no-repeat 1px 4px;padding:0 0 5px 10px}
#contentwide2 li a{}

Bước 3. Tìm sau thẻ </head> đến đoạn code như bên dưới. Phần được đánh dấu màu đỏ là phần cần được thêm vào. Bạn cần thay tên các chuyên mục 11, 12, 13 tương ứng với các nhãn mới mà bạn áp dụng cho cột nằm ngang này.

label1 = "tintuc";
Title1 = "TIN TỨC";

label2 = "xahoi";
Title2 = "XÃ HỘI";

label3 = "phongsu";
Title3 = "PHÓNG SỰ";

label4 = "baoblog";
Title4 = "CHỈ CÓ Ở BÁO BLOG";

label5 = "biendong";
Title5 = "TIN BIỂN ĐÔNG - BAUXITE";

label6 = "nguoiviet";
Title6 = "NGƯỜI VIỆT XẤU XÍ";

label7 = "hautruong";
Title7 = "HẬU TRƯỜNG SAO";

label8 = "xicangdan";
Title8 = "XÌ CĂNG ĐAN";

label9 = "video";
Title9 = "VIDEO HOT";

label10 = "feature";
Title10 = "feature";

label11 = "chuyenmuc11";
Title11 = "CHUYÊN MỤC 11";


label12 = "chuyenmuc12";
Title12 = "CHUYÊN MỤC 12";


label13 = "chuyenmuc13";
Title13 = "CHUYÊN MỤC 13";

Lưu Template là OK.

Phù, mệt bở hơi tai rồi. :58) May mà thành công.
More about

Tùy biến với sidebar cho Blogger

Người đăng: buonkhongem on Thứ Năm, 2 tháng 12, 2010

(Huynh Nhat Ha's Blog) -- Phần sidebar trên Template của Blogger cũng có nhiều biến thể khác nhau. Có Template chỉ 1 cột, có Template 2 cột, thậm chí có thể thêm thành 3, 4 cột… Một số trường hợp phức tạp hơn, đặc biệt đối với dạng 1 cột, thì có thể chia thành 2 phần: phần trên gồm 1 cột, phần dưới chia thành 2 cột hoặc ngược lại, phần trên gồm 2 cột, phần dưới gồm 1 cột.

Lấy ví dụ, nếu sidebar trên Template của tôi có 1 cột thì cấu trúc HTML trong Template sẽ có dạng:


<div id='sidebar-wrapper'>
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='HTML1' locked='false' title='' type='HTML'/>
</b:section>
</div>

Nếu tôi muốn chia thành 2 phần mà phần trên gồm 1 cột và phần dưới chia thành 2 cột thì tôi phải thiết lập cấu trúc HTML trong Template như sau:

<div id='sidebar-wrapper'>
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='HTML1' locked='false' title='' type='HTML'/>
</b:section>

<div id='2columns'>
<div class='col-left'>
<b:section class='sidebar' id='sidebar2' preferred='yes'>
<b:widget id='Label1' locked='false' title='Labels' type='Label'/>
</b:section>
</div>
<div class='col-right'>
<b:section class='sidebar' id='sidebar3' preferred='yes'>
<b:widget id='BlogArchive1' locked='false' title='Blog Archive' type='BlogArchive'/>
</b:section>
</div>
</div>

</div>

Sau đó cần thêm thuộc tính CSS cho phần 2 cột, thêm đoạn code sau đây vào trước dòng ]]></b:skin>.

.col-left {
float:left;
width:47%;
}
.col-right {
float:right;
width:48%;
}

Như vậy toàn bộ đoạn code CSS cho kiểu sidebar này có dạng như sau:

#sidebar-wrapper {
float:right;
margin-right:40px;
margin-top:-9px;
overflow:hidden;
width:296px;
word-wrap:break-word;
}
h2 {
border-bottom:1px solid #CCCCCC;
font:$headerfont;
color:$sidebarcolor;
letter-spacing:0;
margin:0 -10px;
padding:0 10px 5px;
text-transform:none;
}
.sidebar {
color:$sidebartextcolor;
font-size:90%;
line-height:1.5em;
}
.sidebar ul {
list-style:none outside none;
margin:0;
padding:0;
}
.sidebar li {
line-height:1.5em;
margin:0;
padding:0 0 0.25em 15px;
text-indent:-15px;
}
.sidebar .widget {
border-bottom:1px dotted #CCCCCC;
margin:0 0 1.5em;
padding:0 0 1.5em;
}
.col-left {
float:left;
width:47%;
}
.col-right {
float:right;
width:48%;
}

Giải đáp yêu cầu của bạn Mai Ly: Nếu bạn muốn thêm một cột sidebar vào dưới 2 cột sidebar sẵn có nhưng có chiều rộng bằng tổng chiều rộng của 2 cột đó thì phải điều chỉnh một số điểm, đại khái như sau:

Bạn phải đặt một id có tên rightcol để chứa toàn bộ các cột sidebar, sau đó thêm vào một id có tên sidebar3, đặt code HTML như sau:

<div id='rightcol'>

<div id='sidebar-wrapper'>
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='BlogArchive1' locked='false' title='Archives' type='BlogArchive'/>
</b:section>
</div>
<div id='sidebar-wrapperL'>
<b:section class='sidebar' id='sidebar2' preferred='yes'>
<b:widget id='Label2' locked='false' title='Categories' type='Label'/>
</b:section>
</div>
<b:section class='sidebar' id='sidebar3' preferred='yes'>
<b:widget id='HTML100' locked='false' title='HTML' type='HTML'/>
</b:section>

</div>

Những phần được đánh dấu màu đỏ là phần thêm vào, những phần còn lại có thể không còn giống như trên Template của bạn bởi vì bạn đã thêm đủ thứ tiện ích vào đó rồi (ở đây chỉ giới thiệu nguyên gốc của Template lúc chưa chỉnh sửa).

Ở phần CSS thêm vào như sau (những phần được đánh dấu màu đỏ là phần thêm vào).

#rightcol {
float:right;
margin-top:182px;
overflow:hidden;
width:350px;
word-wrap:break-word;
}
#sidebar-wrapper {
float:right;
margin-right:20px;
overflow:hidden;
width:150px;
word-wrap:break-word;
}
h2 {
-moz-background-clip:border;
-moz-background-inline-policy:continuous;
-moz-background-origin:padding;
background:transparent url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3Eo6B3qbWmiRFnNYWTz9GCbwVhHymT3HK-p-pPnon9VqAdjW7T-kEqLQDZuvY1-ZeHw2wQoRGhPzEC56O-WWbc_jY4NThxL1QzVtyoFWyEeOctORfq3jhZpB74DQcah2smiw7Poh_4PwB/s1600/bg_sb_head1.gif) no-repeat scroll center top;
color:#000000;
font-family:'Trebuchet MS',Trebuchet,Arial,Verdana,Sans-serif;
font-size:78%;
font-size-adjust:none;
font-stretch:normal;
font-style:normal;
font-variant:normal;
font-weight:normal;
height:32px;
letter-spacing:0;
line-height:1.4em;
margin:1.5em 0 0.75em;
padding-left:20px;
padding-top:7px;
text-transform:uppercase;
}
.sidebar {
color:#666666;
font-family:georgia;
line-height:1.5em;
}
.sidebar ul {
list-style-image:none;
list-style-position:outside;
list-style-type:none;
margin:0;
padding:0;
}
.sidebar li {
-moz-background-clip:border;
-moz-background-inline-policy:continuous;
-moz-background-origin:padding;
background:transparent url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXjD_BGl7qkA6KEi9dOx-r_LLW7A4s_SxV6st3mQXUYibM9KhRacjpW8MAB9wYCiOnYbkunEpg1mgas2n6b4JYtMbv-wvbUVTERgQNh-8LTVEQuaZ5EKw0SYbxI5dPxDxFwP1sEnXEH_z7/s1600/bg_sb_arrow1.gif) no-repeat scroll 0 5px;
line-height:1.5em;
margin:0;
padding:0 0 0.25em 15px;
}
.sidebar .widget, .main .widget {
margin:0 0 1.5em;
padding:0 0 1.5em;
}
#sidebar h4 a.rsswidget {
margin-left:0;
overflow:hidden;
text-decoration:none;
}
#sidebar-wrapperL {
float:left;
overflow:hidden;
padding-left:25px;
width:150px;
word-wrap:break-word;
}
#sidebar3 {
float:right;
margin-top:0;
overflow:hidden;
padding-right:20px;
width:300px;
word-wrap:break-word;
}
#sidebar3 h2 {
-moz-background-clip:border;
-moz-background-inline-policy:continuous;
-moz-background-origin:padding;
background:transparent url(URL_hinh anh) no-repeat scroll center top;
color:#000000;}
.widget-content {
padding-left:10px;
}

Bạn cần phải tạo một background cho tiêu đề của sidebar được thêm vào, sau đó upload lên host (hoặc lên Blogger) để lấy đường link rồi thay vào dòng URL_hinh anh.
More about

Cân bằng chiều cao của phần main và phần sidebar

Người đăng: buonkhongem on Chủ Nhật, 31 tháng 10, 2010

(Huynh Nhat Ha's Blog) --
Khi thiết kế Blogger, đôi khi chúng ta gặp trường hợp phần main và phần sidebar của trang blog ở một số template không có chiều cao bằng nhau, khiến cho blog thiếu sự cân đối.

Việc điều chỉnh chiều cao của phần main và phần sidebar có thể được thực hiện bằng việc sử dụng javascript khá đơn giản. Bạn chỉ việc đặt đoạn code bên dưới vào trước thẻ </head> là có thể giúp cho phần main và phần sidebar có cùng chiều cao rồi.
<!--Height Fixer Starts-->
&lt;script type=&#39;text/javascript&#39;&gt;
&lt;!--
onload=function() {

var mh = document.getElementById(&#39;main-wrapper&#39;).offsetHeight;
var sh = document.getElementById(&#39;sidebar-wrapper&#39;).offsetHeight;
if(sh&gt;mh) mh=sh;
document.getElementById(&#39;main-wrapper&#39;).style.height = document.getElementById(&#39;sidebar-wrapper&#39;).style.height = mh+ &#39;px&#39;
}
//--&gt;
&lt;/script&gt;
<!--Height Fixer Ends-->
Ở đây sử dụng code đã được mã hóa để tránh trường hợp Blogger gặp lỗi đối với các Template dạng Layout.

Ý nghĩa của code trên như sau: mh biểu thị chiều cao của phần main-wrapper (main height). Biến sh thể hiện giá trị chiều cao của phần sidebar-wrapper. Nếu sh cao hơn mh thì chỉ định chiều cao của phần cao hơn (cao hơn phần main một giá trị pixel nào đó) bằng với chiều cao của phần main cộng với giá trị pixel ở trên. Như vậy script này giúp kiểm tra chiều cao của hai phần và gán cho chiều cao của hai phần đều bằng nhau khi có một phần cao hơn.
More about