คำถามติดแท็ก 8

แท็กเวอร์ชันควรใช้สำหรับคำถามที่ใช้กับเวอร์ชันเท่านั้นไม่ใช่เพื่อบอกว่ามีการใช้เว็บไซต์รุ่นใด

2
การดาวน์โหลดคอร์ผ่านทางบรรทัดคำสั่ง
ฉันมักจะดาวน์โหลด Drupal 7 ที่ใช้ล่าสุดdrush dl drupal --selectแต่ Drupal 8 ไม่ได้อยู่ในรายการ มีวิธีใดที่ดีและรวดเร็วในการดาวน์โหลดเวอร์ชันล่าสุดของ Drupal 8 แม้ว่ามันจะยังอยู่ในช่วงอัลฟ่า
25 drush  8 


8
ฉันจะย้ายเนื้อหาบล็อกจาก dev ไปยังไซต์การผลิตได้อย่างไร
ในที่สุดฉันก็เริ่มมองหา Drupal 8 อย่างจริงจังและฉันสนใจเป็นพิเศษในการจัดการการกำหนดค่า ฉันเจอสิ่งที่อาจมีปัญหาเล็กน้อยและเกี่ยวข้องกับเนื้อหาบล็อกที่กำหนดเอง ฉันสามารถเห็นได้ว่าระบบการจัดการการกำหนดค่าสามารถส่งออกการกำหนดค่าบล็อก - ภูมิภาค, ธีม, น้ำหนัก, การมองเห็น ฯลฯ อย่างไรก็ตามเนื้อหาบล็อกที่เกิดขึ้นจริงไม่ได้อยู่ในการส่งออกการกำหนดค่าซึ่งมีเหตุผลและเข้าใจได้ ในการนำเข้าการกำหนดค่าบล็อกนั้นไปยังไซต์ที่ใช้งานจริงสิ่งที่ดูเหมือนจะเกิดขึ้นคือการกำหนดค่าบล็อกถูกสร้างขึ้นและมีการพักข้อความไว้การรายงานบล็อกนั้นขาดหายไปหรือขาดหายไป เห็นได้ชัดว่าเนื้อหาบล็อกไม่มีอยู่บนเซิร์ฟเวอร์ที่ใช้งานจริง บล็อกที่กำหนดเองสามารถโยกย้ายจากเซิร์ฟเวอร์ dev / staging ไปยังเซิร์ฟเวอร์ที่ใช้งานจริงได้อย่างไร ฉันรู้ว่าบล็อกใน Drupal 8 เป็นเอนทิตีที่สามารถทำงานได้เช่นโหนดดังนั้นจะต้องย้ายข้อมูลในลักษณะเดียวกันและฉันเข้าใจว่ามี Migrate API ใน Drupal 8 แต่ดูเหมือนว่าจะสร้างขึ้นสำหรับการย้ายเนื้อหาจากเว็บไซต์ Drupal 6 และ 7 Drupal 8 ตรงข้ามกับ Drupal 8 ถึง Drupal 8 sites ปัญหานี้เกี่ยวกับการบล็อกที่กำหนดเองโดยเฉพาะเป็นบล็อกที่สร้างขึ้นโดยโมดูลอื่น ๆ เช่น Views จะเห็นได้ชัดว่าจะโยกย้ายข้ามเป็นการกำหนดค่า
24 blocks  8 

1
ทำไมไฟล์เส้นทางจึงเต็มไปด้วยขีดล่าง?
การจัดการกับพารามิเตอร์ทั้งหมดที่มีและไม่มีอักขระขีดล่างนำหน้าคืออะไร? Drupal ตัดสินใจว่าจะประมวลผลพารามิเตอร์เหล่านี้ได้ที่ไหน แนวคิดนี้ได้รับการแนะนำจาก Symfony หรือไม่หรือเป็นเรื่องใหม่สำหรับ Drupal ตัวอย่าง ( node.routing.yml ): node.overview_types: path: '/admin/structure/types' defaults: _controller: '\Drupal\Core\Entity\Controller\EntityListController::listing' entity_type: 'node_type' _title: 'Content types' requirements: _permission: 'administer content types'
24 8  routes 

4
ด้วยสถานะ D8 ปัจจุบันโครงสร้างการตัดสินใจสำหรับการสร้างเอนทิตีเนื้อหาแบบใหม่กับการสร้างประเภทเนื้อหาสำหรับเอนทิตีเนื้อหา“ โหนด” คืออะไร
เราได้เห็นสี่ปีและรุ่นแรกของ Drupal 8 ตั้งแต่คำตอบที่ยอมรับได้ถูกเขียนขึ้นสำหรับคำถามที่ว่า " เมื่อใดจึงเหมาะสมที่จะสร้างเอนทิตีแทนที่จะเพิ่งเพิ่มประเภทเนื้อหาใหม่ " และเอนทิตีนั้นสำคัญยิ่งกว่า Drupal 8 มากกว่าใน Drupal 7 ( RefB , RefC , RefD ) ในโลกใหม่ของ Drupal 8 โครงสร้างการตัดสินใจสำหรับการสร้างเอนทิตีเนื้อหาใหม่เมื่อเทียบกับประเภทเนื้อหาใหม่สำหรับเอนทิตีเนื้อหาประเภท "โหนด" คืออะไร เมื่อคุณพิจารณาคำตอบโปรดพิจารณาสิ่งต่อไปนี้: ประเภทเนื้อหาใหม่สำหรับประเภทเอนทิตีเนื้อหาของ "โหนด" ยังคงเหมาะสมในสถานการณ์ 99% เมื่อเทียบกับประเภทเอนทิตีเนื้อหาใหม่หรือไม่ โครงสร้างการตัดสินใจในขณะนี้มีเหตุผลที่ดีกว่าดีกว่าหรือชัดเจนกว่าในการหลีกเลี่ยงการใช้ชนิดเอนทิตีเนื้อหา "โหนด" และสร้างประเภทเอนทิตีเนื้อหาใหม่แทนหรือไม่ และถ้าใช่พวกเขาคืออะไร พวกเขารวมถึง: ประสิทธิภาพ? การรักษาความปลอดภัย / สิทธิ์? จำนวนโมดูลที่ทำงานกับ Node-entity-type Content-Types และไม่ทำงานกับเอนทิตีเนื้อหาอื่น ๆ ? บางที - จากคำตอบที่ยอมรับก่อนหน้านี้ที่อ้างถึงข้างต้น …
24 entities  8 

4
ส่ง HTML ดิบไปที่ #markup
ฉันมีเนื้อหา HTML บางส่วนมันมาจากห้องสมุดภายนอกดังนั้นฉันจึงไม่สามารถเปลี่ยนแปลงได้มันมีแท็ก<span>และ<div>คุณลักษณะมากมายเช่น: <span style="color: #0000ff;">แต่เมื่อฉันใช้: $render = array( '#markup' => $myhtmlcontent, ); ในอาเรย์การเรนเดอร์ Drupal จะดึงคุณลักษณะและมันคง<span>ไม่มีสไตล์ ดังนั้นฉันจะหลีกเลี่ยง Drupal เปลี่ยนแปลงสิ่งที่ฉันส่งเป็นมาร์กอัปได้ซึ่งไม่ต้องการตัวกรองใด ๆ เพราะไลบรารี่ทำให้ปลอดภัยหรือในที่สุดก็ทำให้มีสไตล์
24 theming  8 

5
ทำซ้ำผ่านฟิลด์เนื้อหาค่าหลายค่าในเทมเพลต Twig
ฉันต้องควบคุมการแสดงผลของfield_admin_tagsฟิลด์ในnode.html.twigเทมเพลต งานนี้: {{ content.field_admin_tags }} - แสดงผลทุกอย่าง (ป้ายกำกับ + ค่าฟิลด์ทั้งหมด) {{ content.field_admin_tags.0 }} - แสดงเฉพาะค่าแรกในฟิลด์และไม่มีเลเบล ปัญหา: <ul><li>...</li></ul>ฉันมีการควบคุมมากกว่ามาร์กอัปรอบแท็กเช่นไม่มี ดังนั้นความคิดของฉันคือย้ำไปที่อาร์เรย์เรนเดอร์ แต่นั่นไม่ได้ผล: {% for tag in content.field_admin_tags %} {{ tag }} {% endfor %} ฉันได้รับ: Exception: Object of type Drupal\node\Entity\Node cannot be printed. ฉันคิดว่าฉันวนซ้ำคีย์ / ค่าของเรนเดอร์เรนเดอร์ vs รายการที่อยู่ในสนาม (ถ้าฉันพิมพ์ "X" ในแต่ละลูปฉันจะได้ 20 X …
23 theming  8 

2
อัพเดตฟิลด์อ้างอิงเอนทิตีโดยทางโปรแกรม
ฉันรู้ว่าฉันสามารถอัปเดต (หรือตั้งค่าสำหรับ) ฟิลด์การอ้างอิงเอนทิตีใน Drupal 7 ด้วยรหัสที่คล้ายกับต่อไปนี้ $node['field_code_used_by'][LANGUAGE_NONE][0]['target_id'] = $id; ฉันต้องการตั้งค่าโปรแกรมสำหรับเขตข้อมูลการอ้างอิงเอนทิตีผู้ใช้ของฉันใน Drupal 8 ฉันพยายามด้วย$node->field_code_used_by->setValue(1);และ$node->field_code_used_by->entity->value = 1;แต่ไม่ใช่ของพวกเขาทำงาน ฉันจะตั้งค่าสำหรับเขตข้อมูลอ้างอิงเอนทิตีได้อย่างไร
23 8  entities 

3
รับเส้นทางไปยังเนื้อหาชุดรูปแบบในแม่แบบ Twig
ฉันมีคำถามเกี่ยวกับการหาเส้นทางไปยังรูปภาพในเทมเพลต Twig รูปภาพไม่ได้ถูกกำหนดให้กับเขตข้อมูลหรือบางสิ่ง เพียงแค่ภาพนิ่งที่ถูกเก็บไว้ใน "MYTHEME / image / icon / my-icon.png" ใน Drupal 7 ฉันได้รับเส้นทางใน node.template ของฉันด้วยรหัสต่อไปนี้: <img src="<?php print base_path() . path_to_theme(); ?>/image/icons">/my-icon.png มันทำงานร่วมกับใน Drupal 8 ได้อย่างไร template_preprocess_node()ผมพยายามที่จะส่งผ่านตัวแปรใน MYTHEME.theme: $variables['images_path'] = \Drupal::theme()->getActiveTheme()->getPath() . '/image/'; แม่แบบกิ่งไม้: <img src="{{ images_path ~ 'icons/' ~ 'my-icon.png' }}"> มันไม่ทำงาน ไม่มีข้อผิดพลาด PHP เป็น แต่เส้นทางถูกผิดบอกว่าจะเป็นhttp: //localhost/node/themes/template/image/icons/my-icon.png
22 media  8  theming 

3
ฉันจะแสดงโหนดได้อย่างไรในขณะนี้ที่ node_view () เลิกใช้แล้ว
ใน Drupal 7 ฉันมักจะใช้node_view()สำหรับการแสดงผลโหนด (ใช้โหมดดู) ในบล็อกหรือหน้าดังนี้: $nids = array(123,456,789); $nodes = node_load_multiple($nids); foreach ($nodes as $node) { $node_view = node_view($node, 'teaser'); $output .= drupal_render($node_view); } $build['nodes']['#markup'] = $output; return $build; node_view()/ entity_view()เลิกใช้แล้วและแทนที่ด้วยตัวสร้างมุมมองตามที่อธิบายไว้ในบันทึกการเปลี่ยนแปลงตอนนี้หน่วยงานสร้างมุมมองจะแสดงผลแล้ว ข้อมูลไม่ได้มีรายละเอียดเพียงพอสำหรับฉันที่จะสามารถหาวิธีการบรรลุผลเดียวกัน คุณสามารถสร้างการแสดงผลโหนดใน Drupal 8 เพื่อให้สามารถใช้เอาต์พุตในอาร์เรย์การแสดงผลของบล็อกหรือหน้าได้อย่างไร
22 entities  8 

5
รับ URL ภาพใน Twig
ฉันต้องการที่จะแสดงภาพเป็นภาพพื้นหลังผ่านรูปแบบอินไลน์ในกิ่ง ฉันสร้างเขตข้อมูลที่เรียกว่า bg_image และแนบกับหน้าธรรมดามาตรฐาน หลังจากเล่นไปหลายชั่วโมงฉันก็สามารถรับ URL ของภาพใน node.html.twig {{ file_url(node.field_bg_image.0.entity.uri.value) }} แต่ฉันไม่สามารถทำให้มันทำงานได้ในสนาม - field-bg_image.html.twig ฉันสามารถรับโหนดจากที่ใดก็ได้ดังนั้นฉันจึงสามารถรับภาพได้หรือไม่ ฉันจะรับ URL รูปภาพเพื่อใช้เป็นสไตล์อินไลน์ได้อย่างไร ฉันคิดว่าบางทีฉันสามารถส่งตัวแปรจากฟิลด์ - field-bg_image.html.twig ไปที่ image.html.twig จากนั้นก็แสดงผล {{ uri }} แทน <img{{ attributes.addClass(classes) }} /> แต่ฉันไม่สามารถรับมันผ่านตัวแปรที่นั่นเว้นแต่ฉันใช้รวมถึง {% include 'image.html.twig' with {'image': image, 'isFromField': isFromField} %} (isFromField เป็นจริงเมื่อมันมาจากสนาม - field-bg_image.html.twig) แต่นั่นก็ไม่ได้ผลเช่นกัน รูปภาพไม่เคยแสดงผลเช่นนั้น จะดีใจมากถ้าคุณสามารถช่วยได้ - …
22 theming  8  files 

7
รับนามแฝงเส้นทางจาก NID (หรือวัตถุโหนด)
ฉันมีวัตถุโหนดและฉันพยายามใช้เพื่อรับเส้นทางที่กำหนดใน Drupal 8 มีอยู่drupal_lookup_path()ใน Drupal 7 แต่ฉันไม่เห็นสิ่งใดเทียบเท่าหรือเอกสารสำหรับ Drupal 8 ใหม่ "Drupal" วิธีการรับเส้นทางจากวัตถุโหนดอะไร มันจะเป็นอะไรที่ง่าย$node->get('path')ไหม ดูเหมือนว่าเป็นคำถามง่าย ๆ แต่ฉันไม่พบเอกสารใด ๆ เลย แจ้งให้ทราบฉันไม่ต้องการนามแฝงเส้นทางสำหรับเส้นทางปัจจุบัน; ฉันต้องการเส้นทางนามแฝงสำหรับโหนดโดยพลการกำหนดวัตถุโหนดหรือรหัสโหนด
22 8  nodes  path-aliases 

4
ฉันจะเรียกใช้การอัปเดตใหม่ได้อย่างไร (เปลี่ยนรุ่นของโมดูลสคีมา)
ฉันกำลังทำงานกับโมดูลและฉันเปลี่ยนประเภทฟิลด์สองสามในสคีมา ฉันไม่ได้สำรองข้อมูลก่อนที่จะทดสอบและทำให้ฐานข้อมูลยุ่งเหยิง (เป็นเพียงไซต์ dev) ต่อไปฉันจะติดตั้งใหม่ทุกอย่างและเวอร์ชัน schema นั้นถูกตั้งค่าไว้ที่การอัพเดทสูงสุด อย่างไรก็ตามฉันต้องทำการอัพเดท ดูฉันจะไม่ติดตั้งหากฉันมี schema ที่ปรับปรุงแล้วในรหัสโมดูลดังนั้นฉันจึงคิดว่านี่จะเป็นวิธีที่ดีในการทดสอบการอัปเดตนั้น ฉันจะรีเซ็ตรุ่นสคีมาของโมดูลของฉันเป็นเวอร์ชันที่ต้องการได้อย่างไร ใน Drupal 7 ฉันจะทำสิ่งนี้: drush sqlq "UPDATE system SET schema_version=8102 WHERE name='flllpdf' AND type='module'"
22 8 


4
รายการเมนูที่ไม่สามารถคลิกได้
ในเว็บไซต์ Drupal 8 ฉันต้องการเพิ่มรายการเมนูด้วย "ไม่มีลิงก์" ฉันคิดว่าอนุญาต nolink แต่เมื่อฉันป้อนสิ่งนี้ฉันพบข้อผิดพลาด เส้นทางที่ป้อนด้วยตนเองควรเริ่มต้นด้วย /,? หรือ #. มีวิธีการเพิ่มรายการเมนูที่ไม่สามารถคลิกได้โดยไม่เพิ่ม "#" เพราะ "#" เพิ่มแอตทริบิวต์ [data-drupal-link-system-path = ""] และ [class = "is-active"]
21 8  navigation 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.