Bạn muốn làm chủ Website?

Thẻ điều kiện b:if đầy đủ nhất cho Blogger (Blogspot)

Đối với một template blogger thì thẻ điều kiện b:if hay mở rộng hơn là b:else là yếu tố không thể thiếu, nó giúp bạn có thể điều hướng hiển thị website của bạn một cách tối ưu nhất. Và một khi bạn đã nắm rõ được chức năng và ý nghĩa của những thẻ này thì bạn có thể tùy chỉnh blog cá nhân của bạn dễ như trở bàn tay vậy 😀

 Phần 1: Những thẻ điều kiện b:if cơ bản

Ở phần này mình sẽ giới thiệu đến các bạn những thẻ b:if thường được sử dụng nhất.

1. Thẻ điều kiện cho trang chủ:

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

2. Thẻ điều kiện cho trang chủ, trang search label, trang archive

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

3. Thẻ điều kiện cho bài viết (item)

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

4. Thẻ điều kiện cho trang tĩnh (page)

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

5. Thẻ điều kiện cho trang tìm kiếm

<b:if cond='data:blog.searchQuery'>

6. Thẻ điều kiện trang Search Label:

<b:if cond='data:blog.searchLabel'>

7. Thẻ điều kiện cho trang Search Label nhất định

<b:if cond='data:blog.searchLabel == &quot;Tên nhãn&quot;'>

8. Thẻ điều kiện cho URL nhất định:

<b:if cond='data:blog.url == "URL nhất định"'>

9. Thẻ điều kiện cho bài đăng và trang tĩnh

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

10. Thẻ điều kiện cho bài viết đầu tiên

<b:if cond='data:post.isFirstPost'>

11. Thẻ điều kiện cho trang lỗi 404

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

 

Phần 2: Những thẻ điều kiện b:if nâng cao

Những thẻ này ít được biết tới và dĩ nhiên chúng cũng rất ít khi được các bạn sử dụng vì không hiểu rõ chức năng của nó, nhưng nếu bạn có thể nắm được thì có thể rất là hữu ích.

1. Thẻ điều kiện khi bài viết có nhãn nào đó

<b:if cond='data:post.labels any (l => l.name == "TÊN NHÃN")'>

2. Thẻ điều kiện IN

<b:if cond='data:blog.pageType in {"static_page","item"}'>

Nội dung chỉ hiển thị Trang Tĩnh và trang Bài Viết

</b:if>

3. Thẻ điều kiện NOT IN

<b:if cond='data:blog.pageType not in {"static_page","item"}'> 

Nội dung không hiển thị Trang Tĩnh và trang Bài Viết 

</b:if>

4. Thẻ điều kiện AND

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

Nội dung hiển thị Trang Tĩnh và Trang Bài Viết 

</b:if>

4. Thẻ điều kiện OR

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

Nội dung hiển thị hoặc Trang Tĩnh hoặc Trang Bài Viết 

</b:if>

Mình viết bày này một phần để tổng hợp các thẻ b:if cho blogger, một phần là để mỗi phần sử dụng không phải lên google và tìm từng thẻ một, rất mất thời gian.

Bạn muốn góp ý thêm cho bài viết không? Hãy để lại bình luận  để cùng trao đổi nhé 😉

Nếu bạn thấy bài viết hữu ích thì hãy chia sẻ nó hoặc theo dõi chúng tôi qua Email để không bỏ lỡ bất kỳ một thủ thuật hay nào nhé! Đừng quên để lại đánh giá của bạn, nó là nguồn động lực vô bờ bến với chúng tôi đấy!

Add Comment

  • Không sử dụng từ khóa trong tên.
  • Không sử dụng từ ngữ phảm cảm.
  • Không dẫn link tới các trang có nội dung không lành mạnh.
  • Không bình luận về chính trị.
  • Mọi bình luận sẽ bị xóa nếu vi phạm mà không báo trước.
  • 11 Comments

    1. 2

      thẻ mới này hay nè :p like

      06/06/2017 Reply
      • Boss

        Thẻ này không mới, chỉ là chưa được biết tới thôi 🙂

        06/06/2017 Reply
    2. 2
      phuong:

      Cho mình hỏi, khi thêm một widget chỉ ở trang bài viết, tại sao ở trang layout, widget lại ko xuất hiện, cách khắc phục ntn?

      17/08/2017 Reply
      • Admin
        Shin:

        Cái này là do mặc định Blogspot chỉ hiển thị các widget có hiển thị trên trang chủ thôi. Còn widget mà không hiển thị trên trang chủ thì cũng không hiển thị trong bố cục nhé.

        17/08/2017 Reply
        • 2
          phuong:

          Ok, tksss bạn :))

          17/08/2017 Reply
    3. 3

      Hi bạn
      Cám ơn bạn về bài viết. Mình đã tùy biến khá nhiều lệnh if trong blog http://nhuygialai.com
      Còn vướng điều này :
      Trong relatedposts Bài viết cùng thể loại- riêng với nhãn F. Nhạc mình không muốn áp dụng, đã dùng lệnh <b> nhưng vẫn không được
      Nhờ bạn giúp đỡ (Email: nhuygialai@gmail.com)
      Xin cám ơn bạn

      30/10/2017 Reply
      • Admin
        Shin:

        Bạn định làm gì nhỉ? Ý bạn là ở phần related post bạn muốn thêm một thẻ điều kiện dành riêng cho nhãn F?

        30/10/2017 Reply
        • 3

          Hi bạn
          Đúng vậy. Mình muốn chặn không cho related post với nhãn M. Nhạc ( vì nó load hàng loạt ảnh dạng https://img.youtube.com/vi/…./default.jpg. nên chạy chậm)
          Hoặc có cách nào đó chặn không cho loại tập tin jpg kiểu này load khi mở trang nhãn M. Nhạc thì càng tốt (M, không phải F)
          Cám ơn bạn đã quan tâm nhé

          03/11/2017 Reply
          • Admin
            Shin:

            Bạn có thể gửi đoạn code bài liên quan đang dùng cho mình được không?
            Vì mình thấy các code bài liên quan thường có đoạn này:

            <b:loop values='data:post.labels' var='label'>
            <script expr:src='"/feeds/posts/default/-/" + data:label.name + "?alt=json-in-script&callback=related"' type='text/javascript'/>
            </b:loop>

            Giờ sửa thành thế này chắc được 🙂

            <b:loop values='data:post.labels' var='label'>
            <b:if cond='data:post.labels any (l => l.name == "TÊN NHÃN")'>
            <b:else/>
            <script expr:src='"/feeds/posts/default/-/" + data:label.name + "?alt=json-in-script&callback=related"' type='text/javascript'/>
            </b:if>
            </b:loop>

            03/11/2017 Reply
            • 3

              HI
              Đây là code related post của mình (http://nhuygialai.com)- đã thử các kiểu không được
              <b>

              var ry='Bài viết cùng thể loại:';rn='Không có Bài viết liên quan';rcomment='Nhận xét';rdisable='Tắt Nhận xét';commentYN='yes';

              //<![CDATA[
              var nothumb='https://lh3.googleusercontent.com/1Y9nF7hoKFDe_5VfFqyuXexYuz8hUwWg-eUZkM_-eotdGMm-AhJJ3k16agdi9S2d5dFRsq7dG0Z7Yw=s75&#039;;dw='';titles=new Array();titlesNum=0;urls=new Array();time=new Array();thumb=new Array();commentsNum=new Array();comments=new Array();function related_results_labels(c){for(var b=0;b<c.feed.entry.length;b++){var d=c.feed.entry[b];titles[titlesNum]=d.title.$t;for(var a=0;a<d.link.length;a++){if('thr$total' in d){commentsNum[titlesNum]=d.thr$total.$t+' '+rcomment}else{commentsNum[titlesNum]=rdisable};if(d.link[a].rel=="alternate"){urls[titlesNum]=d.link[a].href;time[titlesNum]=d.published.$t;if('media$thumbnail' in d){thumb[titlesNum]=d.media$thumbnail.url}else{thumb[titlesNum]=nothumb};titlesNum++;break}}}}function removeRelatedDuplicates(){var b=new Array(0);c=new Array(0);e=new Array(0);f=new Array(0);g=new Array(0);for(var a=0;a<urls.length;a++){if(!contains(b,urls[a])){b.length+=1;b[b.length-1]=urls[a];c.length+=1;c[c.length-1]=titles[a];e.length+=1;e[e.length-1]=time[a];f.length+=1;f[f.length-1]=thumb[a];g.length+=1;g[g.length-1]=commentsNum[a]}}urls=b;titles=c;time=e;thumb=f;commentsNum=g}function contains(b,d){for(var c=0;c<b.length;c++){if(b[c]==d){return true}}return false}function printRelatedLabels(a){var y=a.indexOf('?m=0');if(y!=-1){a=a.replace(/\?m=0/g,'')}for(var b=0;b<urls.length;b++){if(urls[b]==a){urls.splice(b,1);titles.splice(b,1);time.splice(b,1);thumb.splice(b,1);commentsNum.splice(b,1)}}var c=Math.floor((titles.length-1)*Math.random());var b=0;if(titles.length==0){dw+=rn}else{dw+=ry;dw+='’;while(b<titles.length&&b<20&&b<maxresults){if(y!=-1){urls[c]=urls[c]+'?m=0'}if(commentYN=='yes'){comments[c]=' – '+commentsNum[c]}else{comments[c]=''};dw+='<a href=”‘+urls[c]+'” rel=”nofollow”></a><a href=”‘+urls[c]+'” rel=”nofollow”>’+titles[c]+'</a>’+time[c].substring(8,10)+’/’+time[c].substring(5,7)+’/’+time[c].substring(0,4)+comments[c]+”;if(c<titles.length-1){c++}else{c=0}b++}dw+='’};urls.splice(0,urls.length);titles.splice(0,titles.length);document.getElementById(‘relatedposts’).innerHTML=dw};
              //]]>

              <b>

              </b>
              var maxresults=6;removeRelatedDuplicates();printRelatedLabels('');
              </b>

              04/11/2017 Reply
              • Admin
                Shin:

                Chà, nếu tem bạn đang dùng code này thì có vẻ không có cách nào để áp dụng được thẻ đk trên rồi 🙁

                06/11/2017 Reply

    Nhận bài viết mới