Nov 27, 2012

Cách hiển thị hoặc ẩn các Widget



Một khi bạn tạo một widget trên blog thì nó sẽ được hiển thị ở tất cả các trang theo mặc định, bao gồm cả trang chủ. Đôi khi bạn chỉ cần hiển thị một vài widget ở trang chủ hoặc chỉ ở một số trang hoặc thậm chí ở một trang riêng biệt nào đó. Thủ thuật này cũng khá đơn giản. Điều quan trọng là bạn phải nắm được ID của widget mà bạn tạo ra.



Các ID thông thường trong blogspot như là: HTML1, HTML2, HTML3, …, Label1, Label2, Label3, …, BlogList1, Followers1, Blog1, BlogArchive1, Profile1, header-wrapper, sidebar, main-wrapper, footer-wrapper, comments, comments-block, …


Các ID khi đưa vào CSS có dấu # ở phía trước, ví dụ: #HTML1. Các class thường gặp trong blogspot như: header-outer, main-outer, footer-outer, post-body, post-footer, …


Các class khi đưa vào CSS có dấu “.” (dấu chấm) ở phía trước, ví dụ: .header-outer.


Để xác định được ID của các widget cũng rất đơn giản, ví dụ : ta có tiện ích(widget) "Người theo dõi" (xem hình minh họa bên dưới)




Bạn nhấp chọn "Chỉnh sửa" sẽ hiện ra hộp thọai như bên dưới:






Phần khoanh tròn màu đỏ chính là ID của widget. Như vậy ta đã xác định được id của nó, bây giờ vào code template để xác định vị trí của nó (xem hướng dẫn bên dưới)


☼Xác định code của widget trong code template:


1. Đăng nhập blog

2. Vào chỉnh sửa code HTML(edit code HTML), chọn mở rộng mẫu tiện ích(Expand Widget Templates).
3. Tìm đọan code như bên dưới, nó chính là code của widget "Người theo dõi" (có thể nhấn Ctrl +F rồi điền từ khóa "Followers2" để tìm).




Khi đã xác định được code của 1 widget, bây giờ ta bắt đầu vào thủ thuật




Lấy ví dụ widget mà bạn tạo có id là HTML6 và bạn đặt tiêu đề cho widget đó là BLOGGER TIPS. Vào Bố cục (Layout) rồi chỉnh sửa HTML ở chế độ mở rộng mẫu tiện ích.


*  Trường hợp 1: Hiển thị widget chỉ ở trang chủ: Tìm và thêm đoạn code được đánh dấu màu đỏmàu xanh như bên dưới.

<b:widget id='HTML6' locked='false' title='BLOGGER TIPS' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != &quot;&quot;'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
<b:include name='quickedit'/>
</b:if></b:includable>
</b:widget>
* Trường hợp 2: Hiển thị widget ở tất cả các bài viết, trừ trang chủ: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:

 <b:if cond='data:blog.pageType == "item"'>

*  Trường hợp 3: Chỉ hiển thị widget ở một trang riêng biệt nào đó: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:

 <b:if cond='data:blog.url == "URL của trang riêng biệt"'>

*  Trường hợp 4: Chỉ hiển thị widget ở các trang chính gồm Trang chủ, các trang Label và Archive: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:

 <b:if cond='data:blog.pageType == "index"'>
*  Trường hợp 5: Chỉ hiển thị widget ở các trang lưu trữ: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:
 <b:if cond='data:blog.pageType == "archive"'>
*  Trường hợp 6: Chỉ hiển thị widget ở tất cả các trường hợp trừ các trang lưu trữ: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:
 <b:if cond='data:blog.pageType ! == "archive"'>
*  Trường hợp 7: Chỉ hiển thị widget ở tất cả các trường hợp trừ các trang bài viết: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:
 <b:if cond='data:blog.pageType ! == "item"'>
*  Trường hợp 8: Chỉ hiển thị widget ở tất cả các trang trừ một trang riêng biệt nào đó: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:
 <b:if cond='data:blog.url ! == "Url của trang đặc biệt"'>
*  Trường hợp 9: Chỉ hiển thị widget ở tất cả các trang trừ hai trang riêng biệt nào đó trở lên: Thay đoạn code màu đỏ ở trên bằng đoạn code sau đây:
<b:if cond='data:blog.url ! == "Url của trang đặc biệt 1"'>
<b:if cond='data:blog.url ! == "Url của trang đặc biệt 2"'>
* Trường hợp 10: Nếu bạn muốn hiển thị một thứ gì đó ở trang chủ và một thứ gì đó khác ở tất cả các trang: Bạn sử dụng lệnh điều kiện như thế này:
<b:if cond='data:blog.url == data:blog.homepageUrl'>
đây là điều cần hiện thở trang ch
<b:else/>
đây là điều không hiển thở trang ch
</b:if>
Lưu ý: Nếu thay == thành != thì kết quả sẽ ngược lại - nghĩa là không ẩn mà chỉ hiện các widget ở các trang lựa chọn ở trên và ẩn ở các trang còn lại.

Những thủ thuật nhỏ này rất có ích trong việc xây dựng trang chủ cho blog của bạn.


Bổ sung: Thêm cách khác để tùy chỉnh các Widget



CÁCH THỰC HIỆN 


1. Đăng nhập Blogger Dashboard (Bảng điều khiển)

2. Chọn: Design (Thiết kế) > Edit HTML (Chỉnh sữa HTML)
3. Không cần đánh dấu chọn ô: Expand Widget Templates (Mở rộng mẫu tiện ích)

4. Chèn script


* Bước 1: Tìm dòng ]]></b:skin>

* Bước 2: Thêm vào sau nó một trong các đoạn code sau:
(Nhớ thay chữ “ID widget” thành ID của widget bạn muốn ẩn)

1. Ẩn widget ở trang chủ

<!--n widget  trang ch-->
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
2. Ẩn nhiều widget ở trang chủ
<!--ẩn nhiều widget  trang ch -->
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<style type='text/css'>
#ID_widget1 , #ID_widget2, #ID_widget3 {display:none !important;visibility:hidden !important}
</style>
</b:if>
3. Ẩn widget ở bài viết
<!-- ẩn widget  bài viết -->
<b:if cond='data:blog.pageType == "item"'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
4. Ẩn widget ở trang chủ, trang nhãn
<!-- n widget  trang ch, trang nhãn -->
<b:if cond='data:blog.pageType == "index"'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
5. Ẩn widget ở các trang lưu trữ
<!-- n widget  các trang lưu tr -->
<b:if cond='data:blog.pageType == "archive"'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
6. Ẩn widget ở các trang tĩnh
<!-- n widget  các trang tĩnh -->
<b:if cond='data:blog.pageType == "static_page"'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
7. Ẩn widget ở một trang riêng biệt nào đó
<!-- n widget  mt trang riêng bit nào đó -->
<b:if cond='data:blog.url == "URL_c&#7911;a_trang_riêng_bi&#7879;t"'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
8. Chỉ hiện widget ở trang bài viết
<!-- Ch hin widget  trang bài viết -->
<b:if cond='data:blog.pageType != "item"'>
<style type='text/css'>
#ID_widget {display:none !important;visibility:hidden !important}
</style>
</b:if>
Lưu ý: Nếu thay == thành != thì kết quả sẽ ngược lại - nghĩa là không ẩn mà chỉ hiện các widget ở các trang lựa chọn ở trên và ẩn ở các trang còn lại.

*
Bước 3: Save template. (Lưu mẫu)

Nguồn: bongnguoilangle.blogspot.com






1 comment:




Blog

blog

Xem thêm: blog

Note

Đọc thêm: note

Tips

Đọc thêm: Tips