Tôi có một khối trong trang là chế độ xem có bộ lọc theo ngữ cảnh.
Vì một khối không có đường dẫn, tôi phải cung cấp giá trị mặc định "giá trị thô từ URL" theo Bộ lọc theo ngữ cảnh với chế độ xem khối
Tất cả điều này hoạt động như bình thường, chế độ xem trong khối được lọc theo thành phần cuối cùng/thứ ba của URL như được định cấu hình trong cài đặt của bộ lọc theo ngữ cảnh.
Tôi sử dụng khối này ở cả chế độ tổng quan nơi nó hiển thị tất cả các thực thể, được nhóm theo một trường (khi thiếu thành phần đường dẫn thứ ba) và ở chế độ chi tiết hơn, nơi tôi chỉ muốn hiển thị các thực thể mà không có tiêu đề của nhóm.
Vì bộ lọc theo ngữ cảnh đã giảm nhóm thực thể xuống chỉ còn một nhóm nên tiêu đề của nhóm này là thừa và xấu.
Tuy nhiên, khi sử dụng "giá trị mặc định", cấu hình của bộ lọc theo ngữ cảnh không cho phép tôi ghi đè lên tiêu đề.
Những gì tôi đã nghĩ ra - có vẻ như quá nhiều hack - là phần sau trong chế độ xem-view-lưới--{tên chế độ xem}--block.html.twig
{% set parts = url("<current>")|render|render|split('/') %}
{% nếu phần[5] trống %}
{# không phải là khối được lọc theo ngữ cảnh, vì vậy hãy hiển thị tiêu đề #}
{% nếu tiêu đề %}
<h2>{{ tiêu đề }}</h2>
{% endif %}
{% endif %}
Tôi chỉ đang đếm các thành phần đường dẫn, điều này có vẻ hơi mơ hồ đối với tôi.
Có giải pháp nào tốt hơn chỉ sử dụng cấu hình (bộ lọc theo ngữ cảnh) của chế độ xem không? Bất kỳ mô-đun nào để mở rộng tùy chọn cấu hình chế độ xem?
Hoặc, cách khác, làm cách nào để xác định xem một chế độ xem có nhận được bộ lọc theo ngữ cảnh trong nhánh không? Tôi thường gặp khó khăn trong việc tìm kiếm các "đối tượng" có sẵn và "phương thức"/tham số của chúng trong cành cây vì tôi không thể tìm thấy tài liệu tham khảo tốt, đầy đủ. Tại sao tôi cần |render|render chẳng hạn? Hàm url() nhận những tham số nào? Tôi có thể đếm các ký tự trong một chuỗi có nhánh dễ dàng hơn tôi đã làm ở trên không? Con trỏ đánh giá cao.