Score:0

วิธีทำให้ตัวแปร Twig จัดทำโดยโมดูลพร้อมใช้งานสำหรับเทมเพลต twig ของโมดูลอื่น

ธง kz

ฉันเป็นมือใหม่เมื่อพูดถึงการรวมฟังก์ชัน API ของ drupal เข้ากับเทมเพลตทวิก

ฉันได้สร้างโหนดที่เรียกว่า font Awesome icon ตัวแปร Twig ของฟิลด์นี้อยู่ใน

fontawesomeicon.html.twig:

 แท็ก *: แท็ก HTML ที่ใช้สร้างไอคอน 
 ไอคอน *: ชื่อของไอคอนที่ใช้สำหรับเทมเพลต
 * สไตล์: สไตล์ Font Awesome สำหรับไอคอน
 * การตั้งค่า: การตั้งค่าสไตล์ Font Awesome เพิ่มเติม
 * การแปลง: การแปลงพลังแบบอักษรที่ยอดเยี่ยม
 * หน้ากาก: หน้ากาก Font Awesome
 * css: สไตล์อินไลน์ CSS เพิ่มเติม (สำหรับดูโอโทน ฯลฯ)

ดังนั้นจะทำอย่างไรให้พร้อมใช้งาน my-image-slider-block.html.twig

หรืออีกนัยหนึ่ง จะแน่ใจได้อย่างไรว่า {% include 'fontawesomeicon.html.twig' %} จะแสดงผลด้วยตัวแปรที่ให้ไว้ด้านบน

vars เหล่านี้จัดทำโดย https://www.drupal.org/project/fontawesome.

ฉันรอคอยคำตอบจากคุณ และหวังว่าจะสามารถทำซ้ำเนื้อหาในกรณีการใช้งานอื่นๆ ได้เช่นกัน

ru flag
นี่คือสิ่งที่คุณไม่ควรทำใน Drupal เลย เทมเพลต Twig เกือบทั้งหมดใน Drupal เป็นเอนทิตีแคชของตัวเอง การส่งตัวแปรระหว่างเทมเพลตมักจะทำให้แคชเสียหาย มีกรณีขอบที่คุณต้องแชร์ตัวแปร (และคุณจะต้องใช้โค้ด PHP เพิ่มเติมเพื่อให้แคชปลอดภัย) แต่อย่าใช้วิธีนี้เป็นใบเสร็จที่ทำซ้ำได้
ru flag
สำหรับคำแนะนำทั่วไปบางประการเกี่ยวกับการสืบค้นข้อมูลใน Twig ดูคำตอบของฉันใน [Accessing-node-value-in-paragraph-twig- template /306975#306975)
Josh avatar
kz flag
ดังนั้นจึงไม่มีวิธีใดที่ปลอดภัยในการจัดเตรียมตัวแปรจากโมดูลหนึ่งไปยังอีกโมดูลหนึ่ง? ฉันสามารถแสดงผลลัพธ์ของไฟล์โดยใช้ nid และประกาศตัวแปรสำหรับมันในเทมเพลต twig ของบล็อกได้หรือไม่
Kevin avatar
in flag
โหนดไม่ควรมีการกำหนดค่าเช่นแบบอักษรและสไตล์ หากนั่นคือสิ่งที่คุณต้องการ คุณควรใช้การกำหนดค่า ไม่ใช่เนื้อหา
Josh avatar
kz flag
บางทีฉันอาจจะอยู่ในเส้นทางที่ผิด ฉันต้องการเพิ่มสัญลักษณ์แบบอักษรที่ยอดเยี่ยมที่เลือกโดยเครื่องมือเลือกไอคอนแบบอักษรที่ยอดเยี่ยมซึ่งยื่นบนโหนดไปยังตัวเลื่อนฮีโร่สื่อ varbase แน่นอน โมดูลไม่ได้สร้างตัวแปร twig ให้ฉัน ดังนั้นตอนนี้ฉันกำลังมองหาวิธีอื่นในการแสดงผลลัพธ์ของไฟล์ภายในบล็อกที่จัดทำโดยส่วนหัวสื่อ varbase ภายในเทมเพลตบล็อก เนื่องจากบล็อกถูกแคชไว้ซึ่งอาจไม่สามารถทำได้โดยใช้ไฟล์ .theme ในธีมย่อยของฉัน ฉันแค่ไม่มีไอเดีย
jbarrio avatar
cn flag
ฉันพบว่าความคิดเห็นที่เหลือมีประโยชน์มาก พยายามที่จะช่วย ฉันจะบอกว่า (บางทีฉันไม่เข้าใจประเด็น) หากคุณต้องการให้ตัวแปร "ถาวร" สอดคล้องกับการปรับเปลี่ยนธีมต่างๆ ของคุณ ฉันจะบอกว่าการระบุตัวแปรใน theme_preprocess จะช่วยได้ หากคุณกำลังตั้งค่าตัวแปรใน custommodule1 ของคุณและต้องการให้พร้อมใช้งานใน custommodule2 ตรวจสอบให้แน่ใจว่าคุณรันการประมวลผลล่วงหน้าใน custommodule1 ก่อนที่โมดูล 2 จะถูกรันผ่านการใช้ hook_module_implements_alter

โพสต์คำตอบ

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