Score:0

ดูเมนูทางลัดที่มีเงื่อนไขอนุกรมวิธานพี่น้องเท่านั้น

ธง nr

ฉันกำลังใช้ ดูเมนูข้าม ด้วย Drupal 9

โหนดถูกแท็กด้วย a ซอฟต์แวร์_เวอร์ชัน อนุกรมวิธานลำดับชั้นตามรูปแบบนี้:

âââ ฟู
â âââ 0.1.0
€ 0.2.0
âââ บาร์
€ 0.3.0
â âââ 0.3.1
€ 0.4.0
âââ บาซ
    âââ 0.1.0
    âââ 0.2.0
    âââ 0.3.0

แผนมีไว้สำหรับโหนดของประเภทเนื้อหาที่กำหนดเองที่จะติดแท็กด้วยคำย่อยจากรายการด้านบน (ค่าตัวเลข) โดยสร้างรายการข้ามที่มีเฉพาะโหนดที่ติดแท็กด้วยคำที่เป็นพี่น้องซึ่งใช้พาเรนต์เดียวกัน (กล่าวคือ เฉพาะเอกสารประกอบ หน้าสำหรับเวอร์ชันต่างๆ ของซอฟต์แวร์เดียวกัน)

ภายใต้ /admin/structure/views/view/taxonomy_jump_menu/editมีการแสดงบล็อกของมุมมองซึ่งปัจจุบันส่งคืนคำศัพท์อนุกรมวิธานทั้งหมดพร้อมกับผู้ปกครองและเด็กทั้งหมด กล่าวอีกนัยหนึ่ง เมนูทางข้ามจะลิงก์ไปยังเอกสารประกอบสำหรับทุกเวอร์ชันของซอฟต์แวร์ที่แตกต่างกันทั้งหมด

ฉันหวังว่าจะมีวิธีใน Views เพื่อเพิ่ม Contextual Filter ซึ่งสามารถระบุ TID ของอนุกรมวิธานของโหนดปัจจุบันจาก URL ใช้สิ่งนั้นเพื่อกำหนด TID หลักทันทีของ TID (ซึ่งควรจะมีเพียงอันเดียว) และสร้างเมนูข้ามที่มีรายการย่อยทั้งหมดของ TID พาเรนต์ ยกเว้นเทอมพาเรนต์เอง

การกำหนดค่าสำหรับมุมมองนี้คือ YAML หลายร้อยบรรทัด แต่นี่คือข้อความที่ตัดตอนมา (โดยลบบรรทัดที่ไม่เกี่ยวข้องหลายบรรทัด แต่คงการเยื้องไว้):

การพึ่งพา:
  การกำหนดค่า:
    - taxonomy.vocabulary.software_version
  โมดูล:
    - อนุกรมวิธาน
    - ผู้ใช้
    - view_jump_menu
รหัส: taxonomy_jump_menu
ป้ายกำกับ: 'เมนูกระโดดอนุกรมวิธาน'
โมดูล: มุมมอง
คำอธิบาย: ''
แท็ก: ''
base_table: taxonomy_term_field_data
base_field: เสมอ
แสดง:
  ค่าเริ่มต้น:
    display_options:
      แบบสอบถาม:
        พิมพ์: views_query
      สไตล์:
        พิมพ์: jump_menu
      แถว:
        ประเภท: เขตข้อมูล
      เขตข้อมูล:
        parent_target_id:
          รหัสหลัก: parent_target_id
          ตาราง: taxonomy_term__parent
          ฟิลด์: parent_target_id
          ความสัมพันธ์ : ไม่มี
          group_type: กลุ่ม
          ไม่รวม: จริง
        น้ำ:
          id : ติ๊ด
          ตาราง: taxonomy_term_field_data
          สนาม: น้ำขึ้นน้ำลง
          ความสัมพันธ์ : ไม่มี
          group_type: กลุ่ม
          ไม่รวม: เท็จ
          แก้ไข:
            alter_text: จริง
            ข้อความ: '/taxonomy/term/{{ tid }}'
        ชื่อ:
          รหัส: ชื่อ
          ตาราง: taxonomy_term_field_data
          ฟิลด์: ชื่อ
          ความสัมพันธ์ : ไม่มี
          group_type: กลุ่ม
          ไม่รวม: เท็จ
      ตัวกรอง:
        สถานะ:
          ค่า: '1'
          ตาราง: taxonomy_term_field_data
          ฟิลด์: สถานะ
          plugin_id: บูลีน
          ประเภทเอนทิตี: taxonomy_term
          entity_field: สถานะ
          รหัส: สถานะ
          เปิดเผย:
            ตัวดำเนินการ: ''
            operation_limit_selection: เท็จ
            operation_list: { }
          กลุ่ม: 1
        วิดีโอ:
          รหัส: วีดีโอ
          ตาราง: taxonomy_term_field_data
          สนาม: วิดีโอ
          ค่า:
            software_version: ซอฟต์แวร์เวอร์ชัน
          ประเภทเอนทิตี: taxonomy_term
          entity_field: วีดีโอ
          plugin_id: บันเดิล
          เปิดเผย:
            operation_limit_selection: เท็จ
            operation_list: { }
          กลุ่ม: 1
      ประเภท: { }
      ชื่อเรื่อง: 'เมนูกระโดดอนุกรมวิธาน'
      ความสัมพันธ์: { }
      อาร์กิวเมนต์: { }
      filter_groups:
        โอเปอเรเตอร์: AND
        กลุ่ม:
          1: และ

มีที่มาอีกมากมาย แต่ฉันพยายามรวมเฉพาะรายละเอียดที่สำคัญเท่านั้น!

ฉันไม่คิดว่าคำถามนี้มีคำตอบที่ซ้ำกันในฟอรัมนี้ ใกล้เคียงที่สุดที่ฉันได้พบคือ คำถามนี้ ซึ่งเกี่ยวข้องกับเมนูมากกว่าอนุกรมวิธาน (แม้ว่าปัญหาของฉันคือฉันควรใช้เมนูอนุกรมวิธานที่นี่) และ คำถามที่ไม่ได้รับการแก้ไขนี้ ซึ่งไม่มีรายละเอียดเพียงพอที่จะรู้ว่าเกี่ยวข้องหรือไม่

ฉันยังได้ตรวจสอบ ปัญหาคิว สำหรับโมดูล contrib แต่ดูเหมือนว่าจะเป็นข้อ จำกัด ของ Views เองซึ่งเป็นแกนหลัก

ฉันได้ลองเพิ่ม กำหนดค่าตัวกรองบริบท: คำศัพท์อนุกรมวิธาน: คำศัพท์ผู้ปกครอง ไปที่มุมมอง แต่นั่นสร้างเมนูกระโดดที่มีโดยไม่คาดคิด เท่านั้น ข้อกำหนดผู้ปกครอง:

âââ ฟู
âââ บาร์
âââ บาซ

ณ จุดนี้ ฉันเริ่มคิดว่ามันจะง่ายกว่ามากในการเขียนการใช้ hook ที่จะแก้ไขแบบสอบถาม แต่นี่เป็นหัวข้อที่ยากในการค้นคว้าทางออนไลน์ (ข้อความค้นหาของฉันทำให้เกิดคิวปัญหาที่ไม่เกี่ยวข้องจำนวนมากที่ย้อนกลับไปที่ Drupal 5)

ดังนั้นเพื่อสรุปทั้งหมดนี้เป็นคำถามที่ตอบได้ การใช้งานตะขอ จะเหมาะที่สุดสำหรับงานนี้หรือไม่?

ฉันเอนเอียงไปทางการใช้ hook_views_query_alter() เพื่อปรับเปลี่ยน $สอบถาม วัตถุเอง (ภายใน $query->ที่ไหน) ขึ้นอยู่กับ ความคิดเห็นนี้แต่ฉันอยู่ในน้ำที่ค่อนข้างลึกที่นี่

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา