Để giải quyết vấn đề trên ta có code dùng để hiển thị tất cả các sản phẩm trong một danh mục và có thể hiển thị nhiều danh mục cùng lúc.
Lưu ý: Đoạn code chỉ hiển thị tên danh mục Sản phẩm (và toàn bộ sản phẩm trong danh mục đó) có trạng thái là Hiện trên trang chủ, các trạng thái khác sẽ không hiển thị dữ liệu trong code này.
Template code:
{d:block module="postproductscate-index"}
{d:begin loop="12" onRow="1" thumb="350x0"}
{d1:begin module="row_data"}
div class="rowSlide">
h2>data.title}/h2>
ul class="drow dtop">
{d2:begin module="col_data"}
li class="dcol line owl-item dtop">
div class="images">a href="data.link}">data.picture}/a>/div>
h3>a href="data.link}">data.title}/a>/h3>
h4>{data.cost}/h4>
/li>
{d2:end}
/ul>
/div>
{d1:end}
{d:end}
{d:/block}
{d:begin loop="12" onRow="1" thumb="350x0"}
{d1:begin module="row_data"}
div class="rowSlide">
h2>data.title}/h2>
ul class="drow dtop">
{d2:begin module="col_data"}
li class="dcol line owl-item dtop">
div class="images">a href="data.link}">data.picture}/a>/div>
h3>a href="data.link}">data.title}/a>/h3>
h4>{data.cost}/h4>
/li>
{d2:end}
/ul>
/div>
{d1:end}
{d:end}
{d:/block}
Trong đó:
dbegin: là thông số cấu hình dành cho block này.
{d:begin}…{d:end}: là cấu trúc lặp trong DFramework, toàn bộ dữ liệu nằm giữa cấu trúc này sẽ được lặp lại theo thông số loop tương ứng với cấu hình.
row_data: khóa để lặp số hàng
col_data: khóa để lặp số cột
loop: là số lượng danh mục được phép hiển thị:
+ loop=”0” nghĩa là hiển thị tất cả danh mục có trạng thái phù hợp, mặc định nếu không có thông số này cũng đồng nghĩa với loop=”0”.
+ loop=”2” nghĩa là hiển thị 02 danh mục (mặc dù có tất cả 03 danh mục phù hợp)
thumb: là tỷ lệ thumbnail của hình ảnh
Ví dụ trong phần Quản lý Danh mục Sản phẩm có các dữ liệu sau:

Kết quả hiển thị trên trang chủ:
