2012-11-07 28 views
6

Trước hết, hãy báo trước ... Tôi là thương hiệu mới đối với Stash. Tôi đã nghe rất nhiều về nó nhưng đây là lần đầu tiên tôi chơi với nó. Tôi có được khái niệm này, nhưng có một thời gian khó khăn để tìm ra điều này.Stash: Nội dung có điều kiện

Tôi có tệp "trình bao bọc" chính và mọi thứ trong trình bao bọc đó vẫn giữ nguyên. Tuy nhiên, tôi muốn tùy chọn này, để có thể bật và tắt thanh bên nếu tôi cần.

Tôi không nghĩ mình sẽ cần một trình bao bọc bố cục hoàn toàn riêng biệt phải không?

Có cách nào để sử dụng biến boolean trong stash không? (ví dụ: 2col = TRUE) hoặc tôi đang nghĩ về nó sai?

Cảm ơn trước sự giúp đỡ của bạn!

Trả lời

3

Tôi thường sử dụng một trình bao bọc cho mỗi mẫu. Nó sẽ chứa một thẻ {exp:stash:get name="content"}, giống như thẻ của bạn, chứa nội dung biến duy nhất bên trong.

Trong các mẫu riêng lẻ của mình, tôi nhúng trình bao bọc vào đầu bằng cách sử dụng một ví dụ nhúng SD thông thường. {embed="includes/wrapper"}.
Sau đó, tôi lấy nội dung để chèn vào trình bao bọc bằng cách sử dụng thẻ {exp:stash:set name="content"}.
Điều này có vẻ giống như những gì bạn đang làm.

Nếu tôi muốn có điều kiện hiển thị thanh bên, tôi có thể chỉ chuyển một biến vào phần nhúng.
ví dụ: {embed="includes/wrapper" show_sidebar="yes"}

Trong wrapper của tôi, tôi sẽ làm điều này:

{if embed:show_sidebar} 
    Sidebar stuff. 
{/if} 
+0

Tôi thích giải pháp đó. Không bao giờ nghĩ đến việc sử dụng các biến nhúng, trong nhúng trình bao bọc. Thiên tài. –

+1

Khái niệm tương tự này có thể được thực hiện bằng cách sử dụng nhúng Stash trong nhánh dev. Tôi không sử dụng bất kỳ nhúng EE nào nữa có lợi cho việc nhúng Stash. Chúng hoàn toàn tuyệt vời - chỉ cần lấy nhánh dev của Stash. –

+0

Cảm ơn Justin. Tôi chưa tự làm quen với việc nhúng các stash. Nếu họ có thể thực hiện cùng một nhiệm vụ, thì đó sẽ là một giải pháp tốt hơn. –

4

Nói chung những gì tôi muốn làm ở đây là thiết lập nhiều Stash được trong trình bao bọc. Sau đó, trong các mẫu riêng lẻ của bạn, bạn có thể đặt cả thanh bên và vùng nội dung chính. Đối với các phần mà bạn có thể đang lặp lại nội dung, chẳng hạn như phần mở và đóng divs của một thanh bên, bạn luôn có thể thả một số đoạn mã bên trong dấu gạch ngang.

Bạn cũng có thể sử dụng exp:stash:not_empty[docs] để quấn quanh div hoặc vùng chứa cho thanh bên trong trình bao bọc.

Các vấn đề liên quan