Score:0

การใช้รูปแบบเทมเพลตจากโฟลเดอร์โมดูล

ธง lc

ฉันมีวิธีแก้ไขปัญหาตามปกติสำหรับเอนทิตีที่กำหนดเอง:

ฟังก์ชัน module_theme($existing, $type, $theme, $path) {
  กลับ [
    'เอกลักษณ์' => [
      'render element' => 'องค์ประกอบ',
      'แม่แบบ' => 'ลักษณะเฉพาะ',
    ]
  ];
}

ฟังก์ชัน template_preprocess_customentity (อาร์เรย์ &$ตัวแปร) {
  $ตัวแปร['เนื้อหา'] = [];
  ...
}

ฟังก์ชัน module_theme_suggestions_customentity_alter (อาร์เรย์ &$ คำแนะนำ ตัวแปร $ อาร์เรย์) {
  $sanitized_view_mode = strtr($variables['elements']['#view_mode'], '.', '_');
  $suggestions[] = 'ลักษณะนิสัย__' $sanitized_view_mode;
}

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

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

Score:2
ธง in

คุณต้องเพิ่มเส้นทางไปยัง hook ของธีมดังนี้:

'my_entity__mailteaser' => [
        'render element' => 'องค์ประกอบ',
        'ตะขอฐาน' => 'my_entity',
        'เทมเพลต' => 'my-entity--mailteaser',
        'path' => drupal_get_path('โมดูล', 'asdentbase') '/ แม่แบบ',
      ]
lc flag
ขออภัย ถ้าฉันทำเช่นนี้ มันจะไม่พบไฟล์ `theme.inc` ของฉันอีกต่อไป เพราะคาดว่าจะอยู่ในโฟลเดอร์เดียวกัน ไม่มีการตั้งค่าเส้นทางแยกกันสำหรับทั้งสอง...
lc flag
อย่างไรก็ตาม ฉันลองใส่ `theme.inc` ที่นั่นด้วย ไม่ มันใช้งานไม่ได้ `เส้นทาง` เปลี่ยนตำแหน่งที่ระบบพยายามค้นหา `ไฟล์` ที่แนบมา แต่ไม่เปลี่ยนตำแหน่งที่ค้นหาเทมเพลต
4uk4 avatar
cn flag
`เบสฮุก' คือทางออกที่ถูกต้อง จากนั้น Drupal จะสามารถค้นหาเทมเพลตในโฟลเดอร์เทมเพลตของโมดูลได้ แม้จะไม่ได้ชี้ไปที่เทมเพลตผ่าน `เทมเพลต` หรือ `เส้นทาง` ดู https://drupal.stackexchange.com/questions/298844/use-custom-content-entity-theme-suggestions-in-own-module
lc flag
ไม่ใช่โดยตัวมันเอง แต่เฉพาะในกรณีที่ฉันเพิ่มรายการธีมพิเศษที่มีโหมดมุมมองติดอยู่ ใช่ คุณถูก. คุณสนใจที่จะตอบสั้น ๆ เพื่อให้ฉันยอมรับหรือไม่? :-)
4uk4 avatar
cn flag
@Gábor ดูหัวข้อที่เชื่อมโยง รหัสในคำถาม + คำตอบคือคำตอบที่สมบูรณ์
lc flag
ใช่ ฉันรู้ ขอบคุณ ฉันใช้มัน ฉันแค่อยากจะยอมรับมันที่นี่

โพสต์คำตอบ

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