Thẻ b:include và b:includable trong Blogger XML

Trong Blogger XML một trong những thẻ được xuất hiện với tần xuất khá nhiều đặc biệt là trong widget Blog mặc định đó chính là b:includeb:includable. Chắc chắn rằng rất nhiều người không biết đây là thẻ gì và sử dụng chúng ra sao, và bài viết này mình sẽ chia sẻ với mọi người nó là gì và cách thức sử dụng chúng như thế nào.

Thẻ b:include và b:includable trong Blogger XML
Tìm hiểu b:include và b:includable

Thẻ b:include và b:includable là gì?

Khi mà bạn muốn sử dụng nhiều lần một đoạn mã (HTML hay JS) nhiều lần trong một widget bất kỳ, nhưng đoạn mã đó quá dài, hai thẻ này chính là giải pháp dành cho bạn.

Các thực hiện rất đơn giản, đầu tiên bạn tạo ra một thẻ b:includable gắn cho nó một cái id và ghi toàn bộ nội dung của đoạn mã mà bạn muốn sử dụng nhiều lần vào trong đó. Sau đó khi cần lấy ra sử dụng ở đâu bạn đơn giản chỉ cần sử dụng thẻ b:include để lấy dữ liệu trong đoạn mã đó ra để sử dụng.

Cú pháp sử dụng


<b:includable id='ten-id' var='ten-gia-tri'>
  [ĐOẠN MÃ HOẶC NỘI DUNG BẤT KỲ]
</b:includable>

Các thuộc tính cho thẻ b:includable

  • id (bắt buộc): Bạn có đặt với chữ số không dấu bất kì, viết liền và không dấu. Mỗi widget phải có tối thiểu một thẻ includable vời id='main' là thẻ đầu tiên mà widget thực thi.
  • var (không bắt buộc) Bạn có thể đặt với chữ và số, đây là biến tạo ra để sử dụng tham chiếu dữ liệu.
Một lưu ý là khi bạn tạo ra thẻ b:includable thì nó hoàn toàn không xuất hiện cho đến khi bạn gọi nó ra bằng the b:include. Các gọi như sau, nếu bạn đặt thẻ b:includable với id='ksl', thì khi đó bạn gọi nó ra bằng thẻ <b:include name='ksl' />, thuộc tính name chính là tên của id của thẻ includable.

Các thuộc tính cho thẻ b:include

  • name (bắt buộc): Phải trùng với ID của thẻ b:includable đã tạo ra trước đó.
  • data (không bắt buộc): Là dữ liệu bạn muốn truyền vào thẻ b:includable bạn đã tạo trước đó. Có nghĩa là giá trị của thằng này sẽ chuyển vào cho cái biến mà bạn đã đặt cho var cho thằng kia.
  • cond (không bắt buộc) Điều kiện thực thi thẻ include. Tương tự không khác gì thẻ b:if.

Ví dụ

Dưới đây là ví dụ cho thấy làm thế nào để sử dụng b:includableb:include.

Đây là ví dụ mình tạo ra thẻ includable để gọi ra tiêu đề bài viết của 10 bài mới nhất, tại widget blog mình sẽ có đoạn mã như sau.
<b:includable id='main'>
  <b:loop var='bv' index='index' values='data:posts'>
    <b:include name='baiviet' data='bv' cond='index < 10'/>
  </b:loop>
</b:includable>
<b:includable id='baiviet' var='baiviet'>
  Tiêu đề: <data:baiviet.title/>
</b:includable>

Video hướng dẫn

CẬP NHẬT SAU

Tạm kết

Bạn nào thường xuyên tham khảo blog của mình sẽ thấy mình có một bài viết về cặp thẻ này rồi, bài này mình muốn viết lại đơn giản hơn và cập nhật thêm đầy đủ cũng như viết lại tiêu đề cho chính xác để phù hợp hơn với mọi người. Và như mọi người thấy thì cũng hoàn tất rồi, bạn nào có thắc mắc gì hãy để lại ở dưới khung nhận xét mình sẽ giải đáp. Sắp tới mình sẽ viết lại nhiều bài nữa về Blogger XML mọi người đón xem nhé.

15 bình luận

  1. avatar says

    09:26 Ngày 01 tháng 06 năm 2015

    Lâm nói rõ hơn về bài này đc ko:

    http://buzz.blogger.com/2015/05/adding-new-expressions-to-blogger.html

  2. avatar says

    21:09 Ngày 02 tháng 06 năm 2015

    Thấy cái đó nó tương đối rõ lắm rồi mà ta, cụ thể Duy không hiểu chỗ nào để chỉ cho dễ :D

  3. avatar says

    17:59 Ngày 19 tháng 06 năm 2015

    Giúp tớ với admin: Tớ muốn cái ảnh (to quá cỡ nhưng mình muốn nó hiển thị mà không bị widget ở bên che mất) thì phải làm thế nào? Đã thử overfolow các kiểu nhưng không được! Không biết phải làm sao nữa!

    Bạn xem hình để dễ hình dung: http://pik.vn/20155bffa2b9-8bf8-4fdf-b4c9-320d0bae1f55.jpeg

  4. avatar says

    21:42 Ngày 19 tháng 06 năm 2015

    z-index cho thẻ img thấp hơn và z-index cho cái class của sidebar là được.

  5. avatar says

    22:38 Ngày 19 tháng 06 năm 2015

    Tớ đã thử nhưng chắc không làm đúng cách nên không được. Đây là bài đăng đó ad vào xem rồi chỉ giúp tớ cụ thể với!
    http://tienganhcuatui.blogspot.com/2015/06/nhap.html

  6. avatar says

    22:50 Ngày 19 tháng 06 năm 2015

    #post-wrapper {
    position: relative;
    z-index: 10;
    }

  7. avatar says

    22:59 Ngày 19 tháng 06 năm 2015

    Cảm ơn ad nhiều! Đã làm được rồi!

  8. avatar says

    16:53 Ngày 08 tháng 08 năm 2015

    cái này có cần nằm trong phần bài viết không hay nằm đâu chả được

  9. avatar says

    17:41 Ngày 08 tháng 08 năm 2015

    Bắt buộc nằm trong 1 widget bất kì bạn nhé.

  10. avatar says

    22:36 Ngày 22 tháng 07 năm 2016

    Chào các bác. Cho mình hỏi chút về HTML trong blogger
    Site mình hiện đang chơi GA. Mình muốn chèn GA vào GIỮA bài viết của site và mình nghĩ ra cách sau:
    Tạo 1 thẻ Code GA
    rồi gọi thẻ trong bài viết.
    Mục đích là để lỡ GA die hay đổi GA sẽ sửa nhanh chóng vì số lượng bài viết rất lớn.
    Mình muốn hỏi là làm vậy có được ko? Mình đã thử và chưa thành công vì không biết đặt thẻ trên ở vị trí nào trong theme, hoặc phải lồng trong những thẻ nào.
    Bác nào biết xin góp ý giúp. Xin cám ơn.

  11. avatar says

    12:51 Ngày 31 tháng 07 năm 2016

    includable để gọi ra tiêu đề bài viết của 10 bài mới nhất trong cùng 1 label.
    Trong cùng 1 label nhé.
    Thì làm thế nào vậy ạ?

  12. avatar says

    17:01 Ngày 31 tháng 07 năm 2016

    Bạn sử dụng mã bài viết này tạo một thẻ includable và nhét vào
    http://www.kslzone.net/2014/04/tien-ich-bai-moi-theo-nhan-cho-blogger.html
    sau đó gọi ra sử dụng bình thường. VD:
    <b:includable id='baivietmoinhat'>
    [ĐOẠN MÃ Ở BÀI KIA]
    </b:includable>
    và chèn vào chỗ muốn chèn
    <b:include name='baivietmoinhat'/>

    XML của blogspot mình trước cũng có thử một vài lần, mình cũng mới thử lại lần nữa không được. Nó chỉ sử dụng được duy nhất tại trang chủ còn lý do vì sao thì rất có thể là blogspot chưa hỗ trợ. Bạn dùng chắc trên nhé.

  13. avatar says

    21:09 Ngày 02 tháng 08 năm 2016

    Ý tưởng của em là thế này bác xem giúp nhé:
    http://shoptuanmanh.blogspot.com/
    ngay trang chủ của blog. muốn hiển thị danh sách bài viết của 4 label. Mỗi label chỉ hiển thị đúng 8 sản phẩm.

    Nhưng phải hiển thị css như trong blog. chứ không phải hiển thị css như trong đoạn mã của trang web. làm mãi mà không được.
    Có 2 hướng giải quyết đều đi vào ngõ cụt:
    1. thêm điều kiện vào loop:















    Nhưng lại nó lại lọc trong 8 bài viết mới nhất. lấy ra label Áo%20Nam. vậy thì hiển thị ra không được 8 bài viết.

    2. làm theo đoạn mã script trong web thì nó lại css không giống được trong blog. Khổ thiệt chứ. với lại cũng không lấy được label Price_mount để hiển thị tiền nữa.

    Bác có cách nào giúp với. vấn đề này em nghiên cứu hơn 3 tuần nay rồi.
    Cám ơn bác nhiều.

  14. avatar says

    22:42 Ngày 02 tháng 12 năm 2016

    có ví dụ nào để lấy 10 bài viết gần đây của label nào đó sử dụng include không bạn

Mọi nhận xét trên blog KslZone.NET sẽ được kiểm duyệt trước khi được xuất bản trên blog. Lưu ý: Nếu bạn để lại backlink về website của bạn, miễn là kèm theo nhận xét hợp lý thì nhận xét đó vẫn sẽ được chấp nhận. Nếu bạn muốn hiện mã HTML thì bạn cần chuyển đổi trước bằng công cụ phía dưới.