Score:0

แสดงขอบเขตที่กำหนดเองลงในเทมเพลต node twig

ธง jp

รหัสของฉันที่ใช้สำหรับ D8 ใช้ไม่ได้อีกต่อไปสำหรับ D9 เทมเพลตทวิกภูมิภาคที่กำหนดเองสำหรับภูมิภาคลงในเทมเพลตโหนดทวิก

ฉันได้รับข้อผิดพลาดนี้และ WSOD:

ข้อผิดพลาด: การเรียกไปยังฟังก์ชันที่ไม่ได้กำหนด entity_load_multiple_by_properties() และธีม x_add_regions_to_node() (/home/xx/www/pfdev/multid9/recommended-project/web/themes/custom/themex/themex.theme ligne 145)

ฉันสังเกตเห็นว่าเงื่อนไขบนขอบเขตใช้งานไม่ได้ แต่ฉันสามารถแสดงขอบเขตเนื้อหาด้วยไวยากรณ์ twig tweak (นอกเงื่อนไข if):

{% ถ้าภูมิภาค_โซน_1ไม่ว่างเปล่า %}
  <div {{ noderegion_attribute.addClass(noderegion_classes).setAttribute('id', 'region-zone-1') }}>
    {{ ภูมิภาค_โซน_1 }}
    {# โมดูล Avec le twig_tweak #}
    {{ drupal_region('region_Zone_1') }}
  </div>
  <!-- /#region-zone_1 -->
{% เอนดิฟ %}

ดังนั้นวิธีการทำสิ่งเดียวกันหรือแก้ไขสำหรับ D9 คืออะไร

ขอบคุณ

แก้ไข: สิ่งนี้สามารถแก้ไขปัญหาของฉันได้หรือไม่ $blocks = entity_load_multiple_by_properties('บล็อก', อาร์เรย์('ธีม' => $ธีม, 'ภูมิภาค' => $ภูมิภาค)); แทนที่ด้วย:

$blocks = \Drupal::entityTypeManager()
        ->getStorage('บล็อก')
        ->loadByProperties(['theme' => $theme, 'region' => $region)]);
Kevin avatar
in flag
ฟังก์ชันนั้นเลิกใช้แล้วและถูกลบออกใน D9: https://api.drupal.org/api/drupal/core%21includes%21entity.inc/function/entity_load_multiple_by_properties/8.5.x
WebmasterPF avatar
jp flag
ขอบคุณ. ดังนั้นฉันต้องแก้ไขอะไรในรหัสของฉันหรือวิธีการใช้ภูมิภาคในเทมเพลตโหนด
Score:0
ธง id

คุณมีตัวอย่างวิธีการแพตช์ในโมดูลร่วม:

ความแตกต่าง --git a/modules/webform_submission_export_import /webform_submission_export_import.module b/modules/webform_submission_export_import/webform_submission_export_import.module    
ดัชนี 69267d2a5..fd4e8b4ba 100644
--- a/modules/webform_submission_export_import/webform_submission_export_import.module
+++ ข/โมดูล/webform_submission_export_import/webform_submission_export_import.module
@@ -236,7 +236,9 @@ ฟังก์ชัน _webform_submission_export_import_file_save_upload_single(\SplFileInfo
   // @todo อย่าสร้างเอนทิตีใหม่เพื่ออัปเดต ดู
   // https://www.drupal.org/node/2241865.
   ถ้า ($ แทนที่ == FileSystemInterface::EXISTS_REPLACE) {
- $existing_files = entity_load_multiple_by_properties('ไฟล์', ['uri' => $file->getFileUri()]);
+ $existing_files = \Drupal::entityTypeManager()
+ ->getStorage('ไฟล์')
+ ->loadByProperties(['uri' => $file->getFileUri()]);
     ถ้า (นับ ($ existing_files)) {
       $existing = reset($existing_files);
       $file->fid = $existing->id();

นอกจากนี้ยังมีโมดูลที่เป็นประโยชน์ที่ดูแลปัญหาประเภทนี้ด้วยการสร้างแพตช์หรือแม้แต่เปลี่ยนโค้ดโดยอัตโนมัติ (คุณควรใช้โมดูลเหล่านี้ในเว็บไซต์เวอร์ชัน D8 ของคุณ) ฉันใช้มันเพื่อเปลี่ยนไปใช้ D9 และมันช่วยฉันประหยัดเวลาได้มาก:

WebmasterPF avatar
jp flag
ขอบใจ . ฉันคิดออกด้วยรหัสและน้ำสมองของคุณ ;)

โพสต์คำตอบ

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