Tôi có một cái nhìn cho loại nội dung sự kiện
với các lĩnh vực event_name
, sự miêu tả
, tóm lược
, event_start_date
, vân vân.
Yêu cầu của tôi là gì:
- Sắp xếp các sự kiện theo thứ tự tăng dần của
event_date bằng hoặc lớn hơn ngày hiện tại
(sự kiện sắp tới)
- Sắp xếp các sự kiện theo thứ tự giảm dần của
event_date nhỏ hơn ngày hiện tại
(Những sự kiện đã qua)
LƯU Ý: dữ liệu sắp tới nên đến trước và sau đó là dữ liệu trong quá khứ.
ví dụ: dữ liệu và đầu ra dự kiến
dữ liệu ví dụ
kết quả mong đợi
Thông qua cài đặt giao diện người dùng bình thường, tôi không thể đạt được điều này. vì vậy tôi đã thử lượt xem_query_alter
hook để sửa đổi tiêu chí sắp xếp. nhưng tôi không thể đạt được điều này. Bất kỳ giúp đỡ?
Những gì tôi đã thử
/**
* Triển khai hook_views_query_alter
*/
hàm news_t1_views_query_alter(ViewExecutable $view, QueryPluginBase $query) {
if($view->id() == 'sự kiện'){
$query->orderby[0]['field'] = "TRƯỜNG HỢP node__field_st_field_st_value KHI NGÀY(node__field_st_field_st_value) >= CURDATE() END";
$query->orderby[0]['direction'] = "ASC";
$query->orderby[1]['field'] = "TRƯỜNG HỢP node__field_st_field_st_value KHI NGÀY(node__field_st_field_st_value) < CURDATE() END";
$query->orderby[1]['direction'] = "DESC";
//$view->set_items_per_page(5);
}
}
nút__field_st
là tên trường event_date.
Cập nhật sau câu trả lời của @Patrick Kenny
Giải pháp của bạn hoạt động tuyệt vời. cảm ơn!. tôi đã thêm một Global: View area (Toàn cầu: Xem khu vực)
ở chân trang của màn hình chính. Nhưng có một trục trặc nhỏ cần được loại bỏ. Tôi có các bộ lọc theo ngữ cảnh và tiếp xúc trong chế độ xem chính được kế thừa (phần này không sao). Nhưng vấn đề là tiêu đề được lặp lại trong màn hình đính kèm. bất kỳ cách nào để thoát khỏi điều này? ảnh chụp màn hình đính kèm.