Banner

Hiển thị số bài đăng tại mỗi trang riêng biệt trong widget blog

Sử dụng thẻ dữ liệu data:numPosts hoặc data:posts.size trong widget blog hiển thị số bài đăng tại mỗi trang riêng biệt


Trong tiện ích Bài đăng trên Blog có một thẻ dữ liệu mà ít ai biết đến đó là thẻ dữ liệu hiển thị số bài đăng tại mỗi trang. Thẻ dữ liệu này sẽ hiển thị chính xác con số bài đăng tại một trang bất kỳ trong Blog mà bạn nên kết hợp với đường dẫn Breadcrumb tại các trang index trong Blog.

Thẻ dữ liệu có tên data:numPosts hoạt động trong widget Blog1 v1 và cả v2, tuy nhiên bạn có thể thay thế bằng thẻ dữ liệu có tên data:posts.size hoặc data:posts.length. Cách sử dụng như sau:

<data:numPosts/> hoặc <b:eval expr='data:numPosts'/>
<data:posts.size/> hoặc <b:eval expr='data:posts.size'/>
<data:posts.length/> hoặc <b:eval expr='data:posts.length'/>

Lưu ý: Các thẻ này là tương đương nhau cho nên sử dụng cái nào cũng được.

Áp dụng trong so sánh toán tử xem các ví dụ:

+ <b:if cond='data:posts.size eq 20'> (Điều kiện số bài đăng bằng 20)
+ <b:if cond='data:posts.size neq 20'> (Điều kiện số bài đăng không bằng 20)
+ <b:if cond='data:posts.size lt 20'> (Điều kiện số bài đăng bé hơn 20)
+ <b:if cond='data:posts.size lte 20'> (Điều kiện số bài đăng bé hơn hoặc bằng 20)
+ <b:if cond='data:posts.size gt 20'> (Điều kiện số bài đăng lớn hơn 20)
+ <b:if cond='data:posts.size gte 20'> (Điều kiện số bài đăng lớn hơn hoặc bằng 20)

Mẫu ví dụ với trang tìm kiếm từ khóa

<b:if cond='data:blog.searchQuery'>
  <div class='breadcrumbs'>
    <b:if cond='data:posts.size neq 20'>
      Có tất cả <data:posts.size/> bài đăng liên quan cho từ khóa: <data:view.search.query.escaped/>
    <b:else/>
      Hiển thị <data:posts.size/> bài đăng liên quan cho từ khóa: <data:view.search.query.escaped/>
    </b:if>
  </div>
</b:if>

Như vậy có thể hiểu tại trang tìm kiếm cho từ khóa nếu hiển thị số bài đăng không bằng 20 thì đoạn hiển thị có dòng chữ: Có tất cả <số bài đăng> bài đăng liên quan cho từ khóa: <từ khóa> còn nếu bằng 20 hiển thị dòng chữ: Hiển thị <số bài đăng> bài đăng liên quan cho từ khóa: <từ khóa>.

Mẫu ví dụ kết hợp với phân trang

<b:if cond='data:posts.size gte 7'>
  <a class='blog-pager-older-link' expr:href='data:olderPageUrl' expr:title='data:messages.olderPosts'>
    <data:messages.olderPosts/>
  </a>
<b:else/>
  <a class='home-link' expr:href='data:blog.homepageUrl'>
    <data:messages.home/>
  </a>
</b:if>

Điều kiện nếu số bài đăng lớn hơn hoặc bằng 7 hiển thị đường dẫn đến các bài đăng cũ hơn còn không hiển thị liên kết trang chủ.


Thêm đánh giá

Trở thành người đầu tiên bình luận cho bài viết này!

Liên hệ Zalo