Điểm:0

Lượt xem Menu Nhảy chỉ chứa các thuật ngữ phân loại anh chị em

lá cờ nr

Tôi đang sử dụng Lượt xem Nhảy Menu với Drupal 9.

Các nút được gắn thẻ với một phiên bản phần mềm phân loại phân cấp, theo mẫu này:

âââ foo
â âââ 0.1.0
â âââ 0.2.0
âââ thanh
â âââ 0.3.0
â âââ 0.3.1
â âââ 0.4.0
âââ baz
    âââ 0.1.0
    âââ 0.2.0
    âââ 0.3.0

Kế hoạch dành cho các nút của Loại nội dung tùy chỉnh được gắn thẻ với thuật ngữ con từ danh sách ở trên (giá trị số), tạo danh sách nhảy chỉ chứa các nút được gắn thẻ với thuật ngữ anh chị em chia sẻ cùng một gốc (nghĩa là chỉ tài liệu trang cho các phiên bản khác nhau của cùng một phần mềm).

Dưới /admin/cấu trúc/lượt xem/lượt xem/taxonomy_jump_menu/chỉnh sửa, có một Hiển thị khối của Chế độ xem hiện trả về toàn bộ từ vựng phân loại, với tất cả cha mẹ và con cái. Nói cách khác, menu Jump liên kết đến tài liệu cho tất cả các phiên bản của tất cả các phần mềm khác nhau.

Tôi đã hy vọng rằng có một cách trong Chế độ xem để thêm Bộ lọc theo ngữ cảnh có thể xác định thuật ngữ phân loại TID của nút hiện tại từ URL, sử dụng cách đó để xác định TID gốc trực tiếp của TID (chỉ nên có một TID) và tạo một menu nhảy chứa tất cả các phần tử con của TID gốc, ngoại trừ chính thuật ngữ gốc đó.

Cấu hình cho Chế độ xem này là hàng trăm dòng YAML, nhưng đây là một đoạn trích (với nhiều dòng không liên quan đã bị xóa, nhưng vẫn giữ được thụt đầu dòng):

phụ thuộc:
  cấu hình:
    - taxonomy.vocabulary.software_version
  mô-đun:
    - phân loại
    - người dùng
    - lượt xem_jump_menu
id: taxonomy_jump_menu
nhãn: 'Menu nhảy phân loại'
mô-đun: lượt xem
sự miêu tả: ''
nhãn: ''
base_table: taxonomy_term_field_data
base_field: tid
trưng bày:
  mặc định:
    tùy chọn hiển thị:
      truy vấn:
        gõ: lượt xem_query
      Phong cách:
        gõ: jump_menu
      hàng ngang:
        loại: lĩnh vực
      lĩnh vực:
        parent_target_id:
          id: parent_target_id
          bảng: taxonomy_term__parent
          trường: parent_target_id
          mối quan hệ: không có
          nhóm_type: nhóm
          loại trừ: đúng
        tid:
          id: tid
          bảng: taxonomy_term_field_data
          lĩnh vực: tid
          mối quan hệ: không có
          nhóm_type: nhóm
          loại trừ: sai
          thay đổi:
            thay đổi văn bản: đúng
            văn bản: '/taxonomy/term/{{ tid }}'
        Tên:
          id: tên
          bảng: taxonomy_term_field_data
          lĩnh vực: tên
          mối quan hệ: không có
          nhóm_type: nhóm
          loại trừ: sai
      bộ lọc:
        trạng thái:
          giá trị: '1'
          bảng: taxonomy_term_field_data
          trường: trạng thái
          plugin_id: boolean
          entity_type: taxonomy_term
          entity_field: trạng thái
          id: trạng thái
          lộ ra:
            nhà điều hành: ''
            toán tử_limit_selection: sai
            toán tử_list: { }
          nhóm 1
        video:
          id: video
          bảng: taxonomy_term_field_data
          lĩnh vực: video
          giá trị:
            phần mềm_version: phần mềm_version
          entity_type: taxonomy_term
          entity_field: vid
          plugin_id: gói
          lộ ra:
            toán tử_limit_selection: sai
            toán tử_list: { }
          nhóm 1
      sắp xếp: { }
      tiêu đề: 'Menu nhảy phân loại'
      các mối quan hệ: {  }
      tranh luận: {  }
      filter_groups:
        toán tử: AND
        các nhóm:
          1: VÀ

Còn nhiều điều nữa đến từ đâu, nhưng tôi đang cố gắng chỉ đưa vào những chi tiết nổi bật!

Tôi không nghĩ câu hỏi này có câu trả lời trùng lặp trên diễn đàn này. Gần nhất tôi đã tìm thấy là câu hỏi này liên quan đến menu chứ không phải phân loại (mặc dù có lẽ vấn đề của tôi là tôi nên sử dụng Menu Phân loại ở đây) và câu hỏi chưa được giải quyết này không bao gồm đủ chi tiết để biết liệu nó có liên quan hay không.

Tôi cũng đã kiểm tra các phát hành hàng đợi đối với mô-đun đóng góp, nhưng nó thực sự có vẻ là một hạn chế của chính Chế độ xem, vốn là cốt lõi.

Tôi đã thử thêm Định cấu hình bộ lọc theo ngữ cảnh: Thuật ngữ phân loại: Thuật ngữ cha mẹ vào Chế độ xem, nhưng điều đó bất ngờ tạo ra một menu nhảy có chứa chỉ có điều khoản cha mẹ:

âââ foo
âââ thanh
âââ baz

Tại thời điểm này, tôi bắt đầu nghĩ rằng việc viết một triển khai hook sẽ sửa đổi truy vấn sẽ dễ dàng hơn nhiều, nhưng đây là một chủ đề khó nghiên cứu trực tuyến. (Các truy vấn tìm kiếm của tôi xuất hiện rất nhiều hàng đợi sự cố không liên quan khi quay trở lại Drupal 5.)

Vì vậy, để rút gọn tất cả những điều này thành một câu hỏi có thể trả lời được, điều gì móc thực hiện sẽ phù hợp nhất cho nhiệm vụ này?

Tôi đang nghiêng về phía sử dụng hook_views_query_alter() để sửa đổi truy vấn $ bản thân đối tượng (trong $query->where) dựa trên bình luận này, nhưng tôi đang ở vùng nước khá sâu đây.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.