Do đó, nếu các bạn nào muốn tìm hiểu về các biểu thức điều kiện, cách ẩn hiện theo điều kiện blogspot mà có phần nào chưa hiểu có thể để lại comment bên dưới.
điền kiện ẩn hiện trong blogspot |
I. Biểu thức Điều kiện để ẩn hiện trong blogspot
<b:if cond='Điều kiện'>
Nội dung
</b:if>
Khi đó tùy vào những điều kiện khác nhau và nội dung sẽ xuất hiện hay không xuất hiện ở trang 1 trang nào đó.
II. Các trang có trong blogspot
- Bài viết (post item)
- Trang tĩnh (staticpage)
- Trang chủ (homepageurl)
- Trang danh mục hay nhãn (label)
- Trang lưu trữ (archive)
- Trang index (có tác dụng trên trang chủ, nhãn, lưu trữ)
- Trang Search
- Trang lỗi Error404
- Trang trên Mobile
II. Áp dụng điều kiện xuất hiện hoặc không xuất hiện
== Có ý nghĩa là chỉ xuất hiện trên trang này .....
!= Có ý nghĩa là xuất hiện trên tất cả các trang trừ trang này ra......
III. Danh sách các điều kiện trong blogger
1. Điều kiện chỉ xuất hiện ở Trang chủ:
<b:if cond='data:blog.url == data:blog.homepageUrl'>
Nội dung
</b:if>
Chỉ không hiện trên trang chủ (điều kiện phủ định)
<b:if cond='data:blog.url != data:blog.homepageUrl'>
Nội dung
</b:if>
Chỉ cần thay == bằng != sẽ ra điều kiện phủ định.
Mặt khác:
<b:if cond='data:blog.searchLabel'>
Nội dung
</b:if>
Là điều kiện hiện trên trang nhãn nhưng có có == thì tại dùng như sau để phủ định.
<b:if cond='!data:blog.searchLabel'>
Nội dung
</b:if>
Thêm "!" và trước data:[.....]
=> Kể từ đây về sau mình không nhắc về điều kiện phủ định nữa nhé!
Nội dung
</b:if>
Chỉ không hiện trên trang chủ (điều kiện phủ định)
<b:if cond='data:blog.url != data:blog.homepageUrl'>
Nội dung
</b:if>
Chỉ cần thay == bằng != sẽ ra điều kiện phủ định.
Mặt khác:
<b:if cond='data:blog.searchLabel'>
Nội dung
</b:if>
Là điều kiện hiện trên trang nhãn nhưng có có == thì tại dùng như sau để phủ định.
<b:if cond='!data:blog.searchLabel'>
Nội dung
</b:if>
Thêm "!" và trước data:[.....]
=> Kể từ đây về sau mình không nhắc về điều kiện phủ định nữa nhé!
2. Điều kiện xuất hiện ở Bài viết (post item):
<b:if cond='data:blog.pageType == "item"'>P/s: Thường áp dụng cho phần bài viết liên quan mà chỉ có bài viết là có nhãn mà thôi
Nội dung
</b:if>
3. Điều kiện xuất hiện ở Trang tĩnh: (..../p/post-a.html)
<b:if cond='data:blog.pageType == "static_page"'>Chỉ hiện trên trang tĩnh có link bất kì
Nội dung
</b:if>
<b:if cond='data:blog.url == data:blog.canonicalHomepageUrl + "p/postn.html"'>
Nội dung
</b:if>
4. Điều kiện xuất hiện ở Trang hoặc Bài viết
<b:if cond='data:blog.url == data:post.url'>
Nội dung hiển thị trên bài viết và trang tĩnh
</b:if>
hoặc sử dụng điều kiện kết hợp
<b:if cond='data:blog.pageType == "static_page" or data:blog.pageType == "item"'>hoặc bạn có thể sử dụng
Nội dung
</b:if>
<b:if cond='data:view.isSingleItem'>
<!-- Nội dung chỉ hiển thị với trang tĩnh và bài viết -->
</b:if>
5. Điều kiện xuất hiện ở Trang index:
Trang Index bao gồm: Trang chủ (hompageurl), trang hiển thị nhãn (label) và trang archive (lưu trữ):<b:if cond='data:blog.pageType == "index"'>Hoặc
Nội dung
</b:if>
<b:if cond='data:view.isMultipleItems'>
Nội dung
</b:if>
6. Điều kiện xuất hiện ở Trang nhãn (danh mục):
<b:if cond='data:blog.searchLabel'>b) Chỉ hiển thị duy nhất 1 nhãn
Nội dung
</b:if>
<b:if cond='data:blog.searchLabel == "blogger"'>c) Chỉ hiển thị trên bài viết có nhãn blogger
<!-- Nội dung chỉ hiển thị trên nhãn "blogger"-->
</b:if>
<b:if cond = 'data: post.labels any (l => l.name == "blogger")'>
// Phần tử có điều kiện để thực thi
</ b: if>
7. Điều kiện xuất hiện ở chỉ hiển thị trên một nhãn nào đó
<b:if cond='data:blog.url == "http://DOMAIN/search/label/Ten-nhan"'>Hoặc:
Nội dung
</b:if>
<b:if cond='data:blog.searchLabel == "Tên nhãn""'>
Nội dung
</b:if>
8. Điều kiện xuất hiện ở Trang có Url bất kì:
<b:if cond='data:blog.url == "ĐỊA CHỈ URL"'>
Nội dung
</b:if>
9. Điều kiện xuất hiện ở Trang lỗi 404:
<b:if cond='data:blog.pageType == "error_page"'>
Nội dung
</b:if>
10. Điều kiện xuất hiện ở Trang lưu trữ:
<b:if cond='data:blog.pageType == "archive"'>hoặc
Nội dung
</b:if>
<b:if cond='data:view.isArchive'>
<!-- áp dụng cho trang lưu trữ -->
</b:if>
11. Điều kiện xuất hiện trên di động Mobile: (.....url.html?m=1)
Là trang mà cuối url xuất hiện thêm ?m=1
Thường những thiết bị có kích thước màn hình hiển thị từ dưới <600px khi truy cập website sẽ chuyển sang url có ?m=1
Thường những thiết bị có kích thước màn hình hiển thị từ dưới <600px khi truy cập website sẽ chuyển sang url có ?m=1
a) Điều kiện chỉ hiện trên di động
<b:if cond='data:blog.isMobileRequest == "true"'>
Nội dung
</b:if>
b) Điều kiện chỉ hiển thị trên Desktop
<b:if cond='data:blog.isMobileRequest == "false"'>
Nội dung
</b:if>
Mình thường áp dụng để hiển thị quảng cáo trên Desktop và không hiển thị quảng cáo ở Mobile để gia tăng tốc độ tải trang trên di dộng.
12. Điều kiện xuất hiện ở Trang bài viết đầu tiên:
Nội dung hiển thị cho những trang có nhiều bài viết trên cùng một trang, áp dụng này cho bài viết đầu tiên FirstPost (chỉ áp dụng cho Blog Gatget v1)
<b:if cond='data:post.isFirstPost'>
Nội dung
</b:if>
13. Điều kiện hiển thị nội dung trên trang có backlink
<b:if cond='data:post.showBacklinks'>
// Nội dung hiển thị
</b:if>
14. Hiện nội dung của 1 tác giả cụ thể
<b:if cond='data:displayname == "Tên tác giả"'>
// Nội dung hiển thị
</b:if>
Có phân biệt viết hoa viết thường
15. Điều kiện ẩn hiện trong Trang Search
a) Bao gồm trang tìm kiếm và trang nhãn
<b:if cond='data:view.isSearch'>b) Chỉ các trang tìm kiếm không bao gồm trang nhãn.
Nội dung
</b:if>
Hoặc chỉ áp dụng cho trang tìm kiếm
Ví du: /search?q=kiến+thức+seo
<b:if cond='data:view.isSearch and !data:view.isLabelSearch'>
Nội dung
</b:if>
16. Hiển thị nội dung có 50 comments trở lên
<b:if cond='data:post.numComments == 50'>
<!-- Nội dung cần trình bày -->
</b:if>
Thường áp dụng khi đi phân trang comment khi bài viết có nhiều comments.
Thay số 50 thành con số khác
b) Hiển thị khi có >2 comment tức từ 3 comment trên lên
Thay số 50 thành con số khác
b) Hiển thị khi có >2 comment tức từ 3 comment trên lên
<b:if cond='data:post.numComments > 2'>c) Hiển thị khi dưới 10 comment trở xuống
Hiển thị khi có 3 bình luận trở lên
</b:if>
<b:if cond='data:post.numComments < 10'>
Hiển thị khi có 3 bình luận trở lên
</b:if>
17. Hiển thị nội dung trên trang cho phép bình luận
<b:if cond='data:post.allowComments'>
<!-- Nội dung cần trình bày -->
</b:if>
</b:if>
Thường áp dụng phần thông báo nội quy bình luận khi tắt comment thì nội quy cũng ẩn đi.
Ví dụ tiện ích #HTML1 có dạng:
<b:widget id='HTML1' locked='false' title='' type='HTML' version='2' visible='true'>
......
</b:widget>
Thì thêm trực tiếp trong thẻ Widget
<b:widget cond="data:blog.isMobileRequest == "false"" id='HTML1' locked='false' title='' type='HTML' version='2' visible='true'>
18. Điều kiện áp dụng cho 1 HTML/Javascript
Chuyển đến tiện ích nằm trong mẫu cần đặt điều kiện:Ví dụ tiện ích #HTML1 có dạng:
......
</b:widget>
......
</b:widget>
</b:widget>
- Ví dụ trên là điều kiện không hiển thị tiện ích #HTML1 trên di động
- Lúc này chúng ta chèn thẳng vào widget luôn mà không cần dùng <b:if nữa.
19. Điều kiện chỉ hiện trên 1 post ID
Mỗi bài viết trong blogspot khi soạn thảo thì trong url đều có 1 dãy số Post ID. Thay thì ta sử dụng cả URL thì lúc này ta chỉ cần nhập Post ID của bài viết đó
<b:if cond='data:blog.pageId == "5383490038187241731"'>
Nội dung chỉ hiện cho cho bài viết có PostID 5383490038187241731</b:if>
20. Điều kiên kết hợp nhiều trang
<b:if cond='!data:blog.pageType == "item"'>
<b:if cond='data:view.isHomepage'>
<!-- trang chủ -->
<b:else/>
<b:if cond='data:view.isLabelSearch'>
<!-- trang nhãn -->
<b:else/>
<!-- trừ trang nhãn -->
</b:if>
</b:if>
</b:if>
21. Hiển thị nội dung ở trang Preview (xem trước)
<b:if cond='data:view.isPreview'> … </b:if>
22. Điều kiện đối với nhãn (Label) cuối cùng
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.isLast != "true"'>
<!-- Nếu ko phải nhãn cuối thì thêm ký tự đặc biệt vào phía sau --> ,
</b:if>
</b:loop>
23. Điều kiện kết hợp các trang theo pageID
<b:if cond='data:blog.pageId in [3893361487068501797,1290146972571680199,7455165550657390530]'>
Nội dung chỉ hiện thị trên các trang tĩnh có PageID là 3893361487068501797,1290146972571680199,7455165550657390530
</b:if>
III. Minh họa các điều khi sử dụng:
Kết hợp của 2 điều kiện (xuất hiện khi thỏa mãn cả 2 điều kiện)
Với đoạn code này thì có ý nghĩa xuất ở trang chủ <b:if cond='data:blog.url == data:blog.homepageUrl'> thì .post-body có chữ màu yellow, nếu là trang nhãn sẽ có màu là blue, ngược lại thì các trang khác có màu red.
<b:if cond='data:blog.pageType != "item"'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<style type='text/css'>.post-body {color: yellow;}</style><b:else/>
<b:if cond='data:blog.searchLabel'><style type='text/css'>.post-body {color: blue;}</style><b:else/>
<style type='text/css'>.post-body {color: red;}</style></b:if>
</b:if>
</b:if>
Với đoạn code này thì có ý nghĩa xuất ở trang chủ <b:if cond='data:blog.url == data:blog.homepageUrl'> thì .post-body có chữ màu yellow, nếu là trang nhãn sẽ có màu là blue, ngược lại thì các trang khác có màu red.
Chúc bạn thành công!
Updated: Xem thêm điều kiện kết hợp nâng cao trong blogger