Tìm hiểu về Vòng lặp Data Label của Blogger
July 30, 20231. Load tất cả các label
Đây chính là vòng lặp để lấy tất cả các label ra ngoài
<b:loop index='i' values='data:post.labels' var='label'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:loop>2. Chỉ lấy label đầu tiên
- Cách 1:
<b:if cond='data:post.labels'> <a expr:href='data:post.labels.first.url'> <data:post.labels.first.name /> </a> </b:if>- Cách 2: Dùng vòng lặp chỉ xuất ra label đầu tiên
<b:loop values='data:post.labels' index='i' var='label'> <b:if cond='data:i == 0'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>- Cách 3:
<b:loop index='item' values='data:post.labels' var='label'> <b:if cond='data:item lte 0'> <a expr:href='data:post.labels[0].url'> <b:eval expr='data:post.labels[0].name' /> </a> </b:if> </b:loop>3. Lấy label cuối cùng
- Cách 1:
<b:if cond='data:post.labels'> <a expr:href='data:post.labels.last.url'> <data:post.labels.last.name /> </a> </b:if>- Cách 2:
<b:loop values='data:post.labels.length - 1' var='label'> <a expr:href='data:post.labels[label].url'> <b:eval expr='data:post.labels[label].name' /> </a> </b:loop>4. Lấy theo điều kiện lớn hơn
- Lấy từ vị trí 1 bỏ vị trí đầu tiên là 0 ( Lớn hơn 0)
<b:loop index='i' values='data:post.labels' var='label'> <b:if cond='data:i gt 0'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>Hoặc
<b:loop index='i' values='data:post.labels' var='label'> <b:if cond='data:i > 0'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>- Tương tự các bạn sửa data:i gt 0 thành các bị trí khác
Tương tự áp dụng với điều kiện nhỏ hơn 2 như sau
<b:loop index='item' values='data:post.labels' var='label'> <b:if cond='data:item lt 2'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>5. Không lấy label cuối cùng
<b:with value='data:post.labels' var='filter'> <b:loop index='i' values='data:filter' var='label'> <b:if cond='data:filter.size neq data:i + 1'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop> </b:with>6. Sắp xếp thứ tự label từ Z -> A
Mặc định label được hiển thị thứ tự từ 0 - 9 - a - z và dưới đây là sắp xếp ngược lại
<b:loop reverse='true' values='data:post.labels' var='label'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:loop>Hoặc
<b:loop values='data:post.labels.length - 1 to 0' var='label'> <a expr:href='data:post.labels[label].url'> <b:eval expr='data:post.labels[label].name' /> </a> </b:loop>7. Nhóm Label
Hiển thị label theo 1 nhóm đã khai báo trước
<b:loop values='data:post.labels' var='label'> <b:if cond='data:label.name in ["Blogspot", "Blogger", "Theme", "Templates"]'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>Ngược lại không hiển thị
<b:loop values='data:post.labels' var='label'> <b:if cond='data:label.name not in ["Blogspot", "Blogger", "Theme", "Templates"]'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>8. Lấy theo nhiều vị trí
Lấy label theo các vị trí 0, 2, 4, 6
<b:loop index='item' values='data:post.labels' var='label'> <b:if cond='data:item in [0,2,4,6]'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>Ngược lại không lấy các vị trí đó
<b:loop index='item' values='data:post.labels' var='label'> <b:if cond='data:item not in [0,2,4,6]'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>9. Lấy theo một vị trí nào đó
Lấy label theo vị trí 3
<b:loop values='data:post.labels' index='i' var='label'> <b:if cond='data:i == 3'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> </a> </b:if> </b:loop>
10. Hiển thị label kèm theo số bài viết
<b:loop index='i' values='data:post.labels' var='label'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> <data:label.name.size /> </a> </b:loop>
Hoặc
<b:loop index='i' values='data:post.labels' var='label'> <a expr:href='data:label.url' rel='tag'> <data:label.name /> <data:label.name.length /> </a> </b:loop>