Score:1

โหลดรายการเมนูที่สร้างจากไฟล์ links.task.yml แบบไดนามิก

ธง cn

ฉันต้องโหลดลิงก์ที่สร้างจาก my_module.links.task.yml โดยทางโปรแกรมในหน้าอื่น

กรณีการใช้งานของฉันคือ ฉันมีชุดของลิงก์ที่แสดงเมื่อดูหน้าโหนดของฉัน ลิงก์จะแสดงและซ่อนตามการเข้าถึงของผู้ใช้ปัจจุบัน และการควบคุมการเข้าถึงจะได้รับการจัดการผ่านตัวเลือกในไฟล์ my_module.routing.yml

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

มีวิธีรับลิงก์แบบไดนามิกหรือไม่ เพื่อที่ฉันจะได้แสดงในดร็อปดาวน์นั้น

Score:1
ธง in

คุณสามารถโหลด ทั้งหมด ลิงก์เมนูที่กำหนดโดยโมดูล (เช่น ลิงก์ที่กำหนดใน *.menu.links.yml กับ MenuLinkManager บริการของ getDefinitions() วิธีแล้วแยกรายการสำหรับลิงก์ที่กำหนดโดยโมดูลของคุณเท่านั้น

$all_module_link_definitions = \Drupal::service('plugin.manager.menu.link')
  ->getDefinitions();

// ถัดไปแยกรายการเฉพาะลิงก์ที่กำหนดโดย my_module
$my_module_link_definitions = [];
foreach ($all_module_link_definitions เป็น $plugin_id => $plugin_definition) {
  ถ้า ($plugin_definition['provider'] === 'MY_MODULE') {
    $my_module_link_definitions[$plugin_id] => $plugin_definition;
  }
}

ในทำนองเดียวกันคุณสามารถโหลด ทั้งหมด โมดูลกำหนดงานโลคัลด้วย LocalTaskManager บริการของ getDefintions() วิธีการแล้วแยกวิเคราะห์รายการเฉพาะงานที่กำหนดโดยโมดูลของคุณ

$all_module_task_definitions = \Drupal::service('plugin.manager.menu.local_task')
  ->getDefinitions();

// ถัดไปแยกรายการเฉพาะงานที่กำหนดโดย my_module
$my_module_task_definitions = [];
foreach ($all_module_task_definitions เป็น $plugin_id => $plugin_definition) {
  ถ้า ($plugin_definition['provider'] === 'MY_MODULE') {
    $my_module_task_definitions[$plugin_id] => $plugin_definition;
  }
}

โพสต์คำตอบ

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