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

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

3
ฉันจะเพิ่มการตรวจสอบความถูกต้องของแบบฟอร์มฝั่งไคลเอ็นต์ลงในแบบฟอร์ม Drupal ได้อย่างไร
ฉันจะเพิ่มการตรวจสอบความถูกต้องของแบบฟอร์มฝั่งไคลเอ็นต์ลงในแบบฟอร์ม Drupal ได้อย่างไร ตัวอย่างเช่นในโมดูลความคิดเห็น หาก vistor ไม่ได้ป้อนที่อยู่อีเมลฉันต้องการป๊อปอัปหน้าต่างที่ระบุว่า: "โปรดป้อนที่อยู่อีเมล" ฉันหวังว่าบางคนสามารถให้ฉันเป็นตัวอย่างของวิธีการที่ฉันทำ
13 7  forms 

2
Drupal 7 และ PageSpeed
โมดูล Apache PageSpeedให้การปรับแต่งที่หลากหลายสำหรับ HTML, JavaScript และอื่น ๆ ซึ่งยอดเยี่ยม อย่างไรก็ตามคุณสมบัติบางอย่างของมันซ้ำซ้อนกับวิธีการรวมและการเพิ่มประสิทธิภาพของ Drupal มีใครทดสอบแล้วว่าตัวกรองใดที่จะมีประโยชน์สำหรับเว็บไซต์ Drupal 7 ทั่วไปและตัวไหนที่ไร้ประโยชน์เนื่องจาก Drupal ให้การสนับสนุนแล้ว
13 7  performance 

1
ประเภทฟิลด์: ข้อความกับข้อความยาว
อะไรคือความแตกต่างระหว่าง 'ข้อความ' และ 'ข้อความยาว' ใน Drupal 7 ถ้าเป็นเพียงความยาวฐานข้อมูลอักขระจะดีกว่าถ้าใช้ความระมัดระวังและเป็นค่าเริ่มต้นในการใช้ข้อความแบบยาวในสถานการณ์ที่โดเมนที่มีค่าที่เป็นไปได้นั้นไม่เป็นที่ทราบแน่ชัด?
13 7  entities 

2
hook_preprocess_page และ hook_preprocess_html แตกต่างกันอย่างไร
ฉันเห็นว่าทั้งสองhook_preprocess_page()และhook_preprocess_html()มีการใช้งานhook_preprocess_HOOK()แต่ฉันไม่เข้าใจว่าจะใช้เมื่อใด hook_preprocess_page ถูกเรียกมาก่อน แต่นั่นไม่ได้ช่วยให้ฉันเข้าใจว่าใครกำลังโทรมา ดูที่debug_print_backtrace()ผลลัพธ์มันถูกเรียกโดยtheme()แต่นั่นไม่ได้ทำให้ฉันได้รับคำตอบจริงๆ มันเป็นเพียงการกำหนดโดยอาร์เรย์ที่ส่งผ่านเข้าไปในdrupal_render()?
13 7  theming 

4
การอัพเดตฟิลด์โดยทางโปรแกรม hook_node_update
ขณะนี้พยายามอัปเดตฟิลด์ทุกครั้งที่มีการสร้างหรืออัปเดตโหนด อย่างไรก็ตามค่าไม่ได้ถูกบรรจุภายในโหนดฉันจะสามารถเข้าถึงวัตถุโหนดด้วยเบ็ดนี้โดยเฉพาะหรือไม่? ฉันจะพลาดอะไรได้บ้าง function vbtoken_node_update($node) { entity_get_controller('node')->resetCache(array($node->nid)); $types = node_type_get_types(); //What are the current Node Content Types? $yes = ($types['volunteer_project']->type); if($node->type === $yes){ $hash = md5($node->title . $node->nid . $node->nid); $hashed = substr($hash, 0, 6); $node = node_load($node->nid); $node->tcode[$node->language][0]['value'] = $hashed; node_save($node); watchdog('vbtoken', 'Added a new Token code to %nid', …
13 7  entities 


2
ฉันจะรับรายการเงื่อนไขอนุกรมวิธานทั้งหมดที่กำหนดให้กับโหนดได้อย่างไร
ฉันมีโหนดและต้องการรับเงื่อนไขอนุกรมวิธานทั้งหมดที่กำหนดให้กับโหนด ใน drupal 6 ฉันสามารถใช้$node->taxonomyและtaxonomy_*ฟังก์ชั่นได้ แต่สิ่งเหล่านี้ไม่มีอยู่ใน drupal 7

6
วิธีสร้างเขตข้อมูลแบบอ่านอย่างเดียวโดยใช้ hook_form_alter
ฉันกำลังพยายามทำให้ฟิลด์ของฟอร์มโปรไฟล์ Drupal เป็นแบบอ่านอย่างเดียวในโหมดแก้ไข ฉันใช้รหัสต่อไปนี้ใน hook_alter $form[field_organisation_company_name][und][0]['#after_build'][]='_build_element_readonly'; function _build_element_readonly($element, &$form_state) { $element['value']['#attributes']['readonly'] = 'readonly'; return $element; } ใน UI ที่ยื่นแสดงเป็นแบบอ่านอย่างเดียว แต่ยังฉันสามารถเปลี่ยนค่าโดยใช้ firebug และบันทึก มีวิธีป้องกันพฤติกรรมนี้หรือไม่?
12 7  forms 

2
เป็น $ node เสมอใน page.tpl.php
ฉันได้รับข้อผิดพลาดเกี่ยวกับ $ node เป็นระยะ ๆ โดยที่ไม่ได้กำหนดไว้ในไฟล์เทมเพลตของฉันฉันมีเงื่อนไขง่ายๆที่ตรวจสอบว่ามีการแสดงประเภทโหนดหรือไม่ ฉันคิดว่า $ node ใช้ได้เสมอหรือฉันผิด
12 7  theming 

3
จะทำการทดสอบ PHPUnit ได้อย่างไร?
Drupal 8 กำลังเสริมกรอบการทดสอบตามSimpletestด้วยPHPUnitและ Simpletest สามารถลบออกได้ใน Drupal 9 ฉันยังไม่อัปเกรดเป็น Drupal 8 แต่ฉันสงสัยว่าฉันจะเขียนการทดสอบที่มีอยู่ใน PHPUnit (เพื่อติดตามแนวโน้ม) สำหรับ Drupal 7 ได้อย่างไรแทนที่จะเป็น Simpletest? มีวิธีการหรือโมดูลสำหรับการรวม PHPUnit กับ Drupal 7 หรือไม่? มีไม่กี่phpunitหรือdrunitแต่พวกมันไม่ใช่ Drupal 7
12 7  testing 

6
คำสั่ง 'drush cc all` ใช้เวลานานเกินไปฉันต้องทำอย่างไร
บนเว็บไซต์ของฉันdrush cc allใช้เวลามากกว่า 4 นาทีในการทำงาน db ไซต์เป็นกี่ GB อย่างไรก็ตามฉันไม่เห็นเหตุผลที่ชัดเจนว่าทำไมใช้เวลานานเกินไป ฉันจะทำอย่างไรเพื่อค้นหาคอขวด
12 7  drush  caching 

3
การกรองมุมมองโดยช่องทำเครื่องหมาย
เว็บไซต์ของฉันมีประเภทโหนดที่เรียกว่า "ทรัพยากร" โหนดชนิดนี้มีฟิลด์ชื่อ "สอบทานแล้ว"; ช่องนี้เป็นช่องทำเครื่องหมายเปิดปิดเดียว: ฉันสร้างมุมมองที่แสดงรายการโหนดทั้งหมดของ "ทรัพยากร" ของโหนด ฉันต้องการกรองมุมมองนั้นจึงจะแสดงเฉพาะโหนดที่มีการทำเครื่องหมายในช่อง "ตรวจสอบแล้ว" อย่างไรก็ตามเมื่อฉันพยายามเพิ่มเขตข้อมูลนั้นลงในมุมมองของฉันฉันจะแสดงสิ่งต่อไปนี้: ฉันคาดว่ากล่องตัวเลือก "ตัวเลือก" จะเป็นช่องทำเครื่องหมายที่ฉันสามารถทำเครื่องหมายหรือปล่อยว่างไว้ได้ ฉันได้รับกล่องที่มี "เลือกทั้งหมด" แทน ไม่ว่าฉันจะเลือกสิ่งนี้หรือไม่ฉันจะแสดงข้อความแจ้งข้อผิดพลาดว่ามี "ไม่พบค่าที่ถูกต้องในตัวกรอง: เนื้อหา: ตรวจสอบแล้ว": ฉันได้ลอง "เปิดเผยเคล็ดลับการแสดงผลหลัก" ที่http://technology.blue-bag.com/top-tip-drupal-views-no-valid-values-found-filterแต่ไม่ได้ผล: ไม่มีตัวกรอง "ไม่ทราบ" ในจอแสดงผลหลักดังนั้นจึงไม่มีสิ่งใดที่จะแก้ไขได้ มีความคิดเกี่ยวกับวิธีที่ฉันสามารถบรรลุผลที่ฉันกำลังมองหา? และจัดการกับ UI แปลก ๆ กับกล่องเลือกมากกว่าช่องทำอะไร คงจะดีถ้ารู้ว่ามีเหตุผลบางอย่างอยู่ ถ้าไม่ฉันจะโพสต์ปัญหาไปยังคิวปัญหา drupal.org ที่เหมาะสม
12 7  views 

5
ฉันจะแทรกเมนู taxonomy เป็นเมนูย่อยของรายการเมนูมาตรฐานได้อย่างไร
ฉันมีเมนูหลักที่มีโครงสร้างระดับบนสุดคล้ายกับต่อไปนี้: Home - Categories - Something Else - ... - Contact ลิงก์ระดับบนสุดแต่ละลิงค์นั้นไปยังหน้าโหนดที่เหมาะสม ฉันมีคำศัพท์สำหรับหมวดหมู่ (หลายระดับ) และฉันต้องการคำศัพท์อนุกรมวิธานเหล่านั้นในเมนูย่อยภายใต้รายการ "หมวดหมู่" ฉันต้องการหลีกเลี่ยงการเข้ารหัสรายการลงในเมนูหลักเนื่องจากเมนูย่อยควรเติบโต / ย่อขนาดตามคำศัพท์ ในอดีตที่ผ่านมาฉันได้เขียนโค้ดที่ซับซ้อนเกินความจำเป็นเพื่อให้บรรลุสิ่งนี้ซึ่งเชื่อมโยงกับการดำเนินงานด้านอนุกรมวิธานและจัดการรายการย่อยของเมนูเฉพาะตามนั้น (คล้ายกับสิ่งที่Taxonomyทำ แต่ไม่มีเมนูที่แตกต่างกัน คำศัพท์). ในขณะที่วิธีการนี้ใช้งานได้มันไม่เหมาะและแน่นอนว่าไม่ใช่เรื่องทั่วไป ฉันไม่สามารถยกโค้ดนั้นจากโปรเจ็กต์เก่าไปยังโค้ดใหม่ได้มันต้องมีการปรับแต่งตามความเหมาะสม ฉันไม่สามารถรู้สึกได้ว่าจะต้องมี 'มาตรฐาน' โซลูชันที่ใช้โมดูลนี้ ฉันเคยเห็นคำแนะนำบางอย่างจากที่นั่นเพื่อใช้โมดูลที่แตกต่างกันรวมกัน ฉันเปิดให้ข้อเสนอแนะใด ๆ แต่ถ้ามันเกี่ยวข้องกับการติดตั้งมากกว่า 1 หรือ 2 โมดูลและโหลดของการกำหนดค่าฮาร์ดโค้ดกำหนดบริบทเฉพาะก็อาจจะไม่ช่วยมากเกินไปในกรณีนี้

2
ฉันจะสร้างธีมเว็บได้อย่างไร [ปิด]
เป็นการยากที่จะบอกสิ่งที่ถูกถามที่นี่ คำถามนี้คลุมเครือคลุมเครือไม่สมบูรณ์กว้างเกินไปหรือโวหารและไม่สามารถตอบได้อย่างสมเหตุสมผลในรูปแบบปัจจุบัน สำหรับความช่วยเหลือในการทำความเข้าใจคำถามนี้เพื่อที่จะสามารถเปิด, ไปที่ศูนย์ช่วยเหลือ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันต้องการธีมเว็บฟอร์มใน D7 ฉันจะทำสิ่งนั้นได้อย่างไร ในการค้นหาฉันรู้ว่าโดยใช้ web-form-nid.tpl.php เราสามารถสร้างธีมของแต่ละ drupal ได้ คนใดคนหนึ่งสามารถแนะนำฉันในกรณีนี้เพื่อกำหนดรูปแบบเว็บ
12 7  webforms  theming 

7
การตรวจจับฟิลด์ที่ถูกเปลี่ยนแปลงโดยทั่วไปในรูปแบบที่กำหนดเองก่อนที่จะบันทึกโหนด
ฉันเพิ่มเขตข้อมูลบางอย่างจากประเภทเนื้อหาลงในแบบฟอร์มที่กำหนดเองโดยใช้ field_attach_form () เมื่อส่งแบบฟอร์มฉันกำลังประมวลผลฟิลด์เหล่านั้นโดยการเรียก field_attach_form_validate () และ field_attach_submit () จาก #validate และ #submit callbacks ณ จุดนั้นฉันต้องการเปรียบเทียบออบเจกต์ post-submit ที่เตรียมไว้กับโหนดเดิมและรำคาญกับ node_save () ถ้ามีฟิลด์ใดฟิลด์หนึ่งเปลี่ยนไป entity_load_unchanged()ดังนั้นผมจึงเริ่มต้นด้วยการโหลดโหนดเดิมใช้ น่าเสียดายที่อาร์เรย์ฟิลด์ในวัตถุโหนดดั้งเดิมไม่ตรงกับอาร์เรย์ฟิลด์ในวัตถุโหนดที่เตรียมไว้ซึ่งกำลังรอการบันทึกแม้ว่าจะไม่มีการเปลี่ยนแปลงใด ๆ ในฟิลด์ดังนั้น "$ old_field == $ new_field ที่เรียบง่าย "การเปรียบเทียบเป็นไปไม่ได้ ตัวอย่างเช่นฟิลด์ข้อความธรรมดาจะปรากฏเช่นนี้ในต้นฉบับ: $old_node->field_text['und'][0] = array( 'value' => 'Test', 'format' => NULL, 'safe_value' => 'Test', ); ในขณะที่โหนดที่จัดเตรียมปรากฏเป็นเช่นนี้ $node->field_text['und'][0] = array( …
12 7  entities 

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