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

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

3
จะเกิดอะไรขึ้นกับข้อมูล Webform เมื่อมีการลบส่วนประกอบ ฉันสามารถเปลี่ยนประเภทส่วนประกอบได้หรือไม่
ฉันสืบทอด Webform ที่ซับซ้อนด้วยการส่งหลายร้อยรายการ หนึ่งในองค์ประกอบคือ Textfield ที่ใช้ในการจับที่อยู่อีเมลของผู้ส่งแบบฟอร์ม ด้วยเหตุผลบางอย่างนี่เป็นฟิลด์ข้อความไม่ใช่ฟิลด์อีเมลซึ่งทำให้ฉันไม่สามารถใช้ที่อยู่อีเมลเพื่อส่งอีเมลยืนยันได้ หากฉันลบองค์ประกอบข้อความของฟิลด์ข้อความจะเกิดอะไรขึ้นกับข้อมูลทั้งหมด ฉันคิดว่ามันจะถูกลบ มีวิธีใดบ้างที่จะเปลี่ยนประเภทขององค์ประกอบของฟอร์มในขณะที่ยังคงรักษาข้อมูลไว้? อัปเดต: ฉันใช้ Drupal 7 และ Webform 3.19
9 7  webforms 

2
ตัวกรองเชิงบริบทของ Views ทำงานอย่างไร
ฉันพยายามพาดหัวตัวกรองบริบทอีกครั้ง! ฉันใช้มันไปซักพักแล้ว แต่ฉันก็รู้สึกตันอีกครั้ง นี่คือสิ่งที่ฉันพยายามทำ: สร้างเพจโหนดเนื้อหาที่โคลนด้วยคำศัพท์อนุกรมวิธานที่แทรกอยู่ในเพจที่โคลนนี้ เช่น: EXAMPLE.com/white-shoes/blue เมื่อผู้ใช้ไปที่หน้า / white-shoes มันจะแสดงหน้าโหนดดั้งเดิมที่มุ่งสู่สีขาว ตอนนี้ถ้าผู้ใช้ตกลงบน / white-shoes / blue มันจะแสดงหน้าโหนดเดียวกัน แต่คราวนี้เนื้อหาเนื้อหาทั้งหมดจะถูกเขียนใหม่แทนที่สีขาวด้วยสีน้ำเงิน ในมุมมองฉันจะต้องสร้างการแสดงผลหน้าด้วยเส้นทางของ:% /% ตอนนี้ฉันจะสร้างตัวกรองเชิงบริบทเพื่อดึง nid ฉันเพิ่มเนื้อหา: nid เป็นตัวกรองเชิงบริบท ฉันเลือกพิสูจน์ค่าเริ่มต้นและใส่รหัส PHP นี้: $ x = drupal_lookup_path ('source', arg (0)); $ y = ระเบิด ('/', $ x); ส่งคืน $ y 1 ; โค้ด PHP นั้นจะแปลงส่วน …
9 7  commerce  views 

2
คุณจะเปลี่ยนตำแหน่งของเอาต์พุต `form_set_error` ได้อย่างไร
มีวิธีใดบ้างใน Drupal 7 ที่จะเปลี่ยนตำแหน่งของเอาต์พุตของform_set_error? ในขณะนี้จะเรียกdrupal_set_messageว่าคิวใดที่ข้อผิดพลาดของแบบฟอร์มทั้งหมดที่ด้านบนของหน้าจอ สิ่งที่ฉันต้องการแทนคือให้แต่ละข้อความปรากฏใต้ช่องที่เหมาะสม หากไม่สามารถทำได้ฉันสามารถตั้งค่าสถานะแบบฟอร์มด้วยตนเองว่า "ไม่ถูกต้อง" ภายในMODULE_form_name_validate()ฟังก์ชันโดยไม่ใช้form_set_errorหรือไม่
9 7  forms 

3
การสร้างชนิดเนื้อหาที่มีฟิลด์ไฟล์ในโมดูลที่กำหนดเองโดยทางโปรแกรม
ฉันกำลังเขียนโมดูลที่กำหนดเองซึ่งฉันเคยทำมาก่อน แต่นี่เป็นครั้งแรกที่ฉันพยายามสร้างประเภทเนื้อหาที่มีฟิลด์ ฉันใช้งานhook_node_infoและประเภทเนื้อหาแสดงขึ้นในรายการประเภทเนื้อหาในรายการดรอปดาวน์จาก admin_menu อย่างไรก็ตามเมื่อฉันเรียกดูจะadmin/structure/typesไม่อยู่ในรายการ ฉันติดตั้งhook_installและหยิบรหัสที่ฉันพบในคำถาม SO อื่น ฉันมีรหัสพิมพ์ข้อมูลแก้ไขข้อบกพร่องบางอย่างลงในบันทึกข้อผิดพลาดของฉันและมันก็ดูเหมือนว่ามันทำงานได้ทั้งหมด แต่เมื่อฉันเรียกดูโครงสร้างเนื้อหาประเภทมันไม่แสดงเขตข้อมูลที่ฉันเพิ่ม นี่คือตะขอ: function mymod_node_info() { return array( 'mymod_content' => array( 'name' => t('My Mod'), 'base' => 'mymod_content', 'description' => t('A Description'), ) ); } function mymod_install() { error_log('mymod_install'); $types = node_type_get_types(); if ( ! field_info_field('field_mymod_myfile') ) { $field = array( 'field_name' …

5
ฉันจะได้รับ ID บันทึกที่แทรกล่าสุดได้อย่างไร
ฉันต้องการรับ ID บันทึกสำหรับแถวที่แทรกล่าสุดในตารางฐานข้อมูล ฉันพยายามที่จะใช้db_last_insert_id()แต่มันก็มีข้อยกเว้น เรียกฟังก์ชั่นที่ไม่ได้กำหนด db_last_insert_id() ฉันจะได้รับ ID บันทึกที่แทรกล่าสุดได้อย่างไร
9 7  database 

3
ฉันจะเพิ่มความเร็วของฟังก์ชั่น node_save () ของ drupal ได้อย่างไร
ฉันกำลังมีปัญหามากกับความไร้ประสิทธิภาพของ node_save () แต่โหนดบันทึกปัญหาของฉันได้อย่างไร นั่นคือสิ่งที่ฉันพยายามค้นหา ฉันสร้างวงวนซ้ำ 100,000 ครั้ง ฉันสร้างขั้นต่ำเปล่าสำหรับวัตถุโหนดให้ถูกต้องและบันทึกอย่างถูกต้อง นี่คือรหัสการบันทึกโหนด: $node = new stdClass(); $node->type = "test_page"; node_object_prepare($node); $node->uid = 1; $node->title = $node_title; $node->status = 1; $node->language = LANGUAGE_NONE; if($node = node_submit($node)){ node_save($node); } นี่คือผลลัพธ์: มีการบันทึก 100,000 โหนดโดยใช้ node_save () ใช้เวลา 5196.22 วินาทีในการทำให้เสร็จสมบูรณ์ นั่นคือเพียง 19 บันทึกวินาที ที่จะพูดน้อยที่เป็นที่ยอมรับไม่ได้โดยเฉพาะอย่างยิ่งเมื่อสมาชิกผู้นี้จะได้รับรอบ 1200 คำสั่งแทรกบุคคลต่อวินาทีและสมาชิกผู้นี้จะได้รับ …
9 7  performance  nodes 

5
วิธีการลบการรวบรวมฟิลด์อย่างถูกต้อง?
รุ่น Drupal: 7.21 โมดูลโมดูลการรวบรวมฟิลด์: 7.x-1.0-beta5 คำอธิบายสั้น ๆ : ฉันไม่ว่างที่จะพยายามนำเข้าคอลเลกชันฟิลด์โดยทางโปรแกรม แต่เมื่อลบบางรายการจะมีการรวบรวมฟิลด์ 'ปลอม' อยู่เสมอ คำอธิบายแบบยาว : ผู้ใช้ของฉันมีฟิลด์การรวบรวมฟิลด์ในโปรไฟล์ของพวกเขา การรวบรวมฟิลด์นี้มี 3 ฟิลด์ข้อความ ฉันต้องการนำเข้าข้อมูลจากฐานข้อมูล sql แบบกำหนดเองไปยังการรวบรวมฟิลด์ของผู้ใช้ การรวบรวมฟิลด์นี้สามารถมีได้หลายค่า เมื่อฉันนำเข้าข้อมูลเป็นครั้งแรกที่ทุกอย่างทำงานได้ดีฉันเห็นข้อมูลในฟิลด์ของการรวบรวมฟิลด์ ยิ่งใหญ่ แต่ที่นี่ส่วนที่ยุ่งยากมา สมมติว่าฉันนำเข้าสำหรับผู้ใช้ที่ระบุ 5 แถวจากฐานข้อมูลที่กำหนดเอง พวกมันจะถูกเพิ่มลงในคอลเลกชันฟิลด์ดังนั้นคอลเลกชันฟิลด์นี้มี 5 รายการแต่ละรายการมี 3 ฟิลด์ จากนั้นฉันลบบางแถวออกจากฐานข้อมูลที่กำหนดเองของฉันเพื่อที่ฉันจะได้เหลือเพียง 3 แถวสำหรับผู้ใช้รายนี้ ฉันเรียกใช้การนำเข้าอีกครั้งอัปเดต 3 รายการแรกของการรวบรวมฟิลด์ แต่จากนั้นฉันเหลือ 2 รายการจากการนำเข้าก่อนหน้า ควรลบเพราะฉันมีแถวที่นำเข้าเพียง 3 แถว แต่ยังมีรายการคอลเลกชันฟิลด์ 5 รายการ ดังนั้นฉันจึงพยายามที่จะลบรายการคอลเลกชันเขตข้อมูลเหล่านี้ แต่มีอย่างน้อยหนึ่งรายการที่เหลือ …
9 7  entities 

9
มุมมอง 3 ลบตัวกรองแบบเปิดเผยโดยทางโปรแกรม
ฉันมีโหนดหลายประเภทแต่ละชนิดอ้างถึงคำศัพท์อนุกรมวิธานที่แตกต่างกัน สำหรับหมวดหมู่ที่แสดงฉันใช้โมดูล taxonomy_display ตัวอย่างเช่นเรามีสองประเภทคือตัวชี้นำและลูกบิลเลียด ตัวชี้นำมีราคาตั้งแต่ราคาถึงและตัวกรองชนิดไม้ แต่ลูกบอลไม่มีตัวกรองชนิดไม้ ดังนั้นฉันจำเป็นต้องลบตัวกรองชนิดไม้ถ้า taxonomy_term tid อ้างถึงคำศัพท์ลูกบิลเลียด ดังนั้นฉันต้องลบหนึ่งในตัวกรองที่เปิดเผยหลายอย่างโดยทางโปรแกรม function modulename_views_pre_view(&$view, &$display_id, &$args) { // Some custom logic wich field_info_instances checking ... $filter_field = 'filter_id'; // Removes from everywhere where i can find filter or filters properties unset($view->display[$view->current_display]->display_options['filters'][$filter_field]); unset($view->display[$view->current_display]->handler->options['filters'][$filter_field]); unset($view->display_handler->display->display_options['filters'][$filter_field]); unset($view->display_handler->options['filters'][$filter_field]); } ฟิลด์ตัวกรองลบออกสำเร็จ แต่ฉันได้รับการแจ้งเตือนจาก php Notice: Undefined index: …
9 7  views 

1
เหตุใดภาษาของฟิลด์เนื้อหาจึงไม่บันทึกเป็นภาษาเดียวกับโหนด
ฉันมีปัญหาที่ผู้ใช้กำลังสร้างโหนดใหม่และป้อนเนื้อความ แต่ตั้งค่าโหนดเป็น "ภาษาเป็นกลาง" สำหรับภาษา แต่เมื่อมันบันทึกโหนดภาษาของฟิลด์ body จะถูกตั้งค่าเป็นภาษาอังกฤษ ทำไมสิ่งนี้ถึงเกิดขึ้น อะไรจะทำให้เกิดสิ่งนี้ ในเว็บไซต์นี้เราเปิดใช้งานและกำหนดค่าทั้งภาษาอังกฤษและฝรั่งเศส เว็บไซต์นี้ D7 ใช้งาน i18n สิ่งนี้คล้ายกับเนื้อความว่างเปล่าในหน้าแก้ไขโหนดยกเว้นว่าฉันต้องการทราบว่าฟิลด์จะมีภาษาที่แตกต่างจากโหนดในตอนแรกได้อย่างไร

3
Drupal 7 Captcha ใน webforms ทั้งหมดหรือต่อ webforms ประเภทเนื้อหา
ฉันเป็น D7 ฉันมีประเภทเนื้อหาที่เปิดใช้งานเว็บฟอร์มอยู่ ความต้องการ ฉันต้องใช้ captcha สำหรับ webforms ทั้งหมดสำหรับโหนดของประเภทเนื้อหานี้ ปัญหา ใน D7 คุณควรจะให้ form_id ในหน้าการตั้งค่าเพื่อรับ captcha ในรูปแบบอย่างไรก็ตามฉันจะโหลดแบบฟอร์มที่มี form_ids ที่แตกต่างกันทั้งหมด ฉันใช้โมดูลCaptcha มีวิธีใดบ้างที่จะปฏิบัติตามข้อกำหนดของฉัน
9 7  webforms  captcha 

6
ฉันจะเพิ่มคลาสในป้ายกำกับได้อย่างไร
ฉันต้องเพิ่มชื่อคลาสให้กับป้ายกำกับที่สร้างขึ้นโดย API ของ Drupal เช่นนี้: $form['name'] => array( '#type' => 'textfield', '#title' => 'Prénom' ); ถ้าฉันใช้สิ่งต่อไปนี้การ<textarea>ได้รับคลาส แต่ไม่ใช่ฉลาก $form['name']['#attributes']['class'] = array('myClass'); <label>ฉันกำลังมองหาบางสิ่งบางอย่างที่คล้ายกันที่จะเพิ่มระดับไป
9 7  forms 

2
มีวิธีใดในการกรองตามหมายเลขสัปดาห์
Drupal 7, อ่าน 3 ฉันมีหลายมุมมองที่กำหนดค่าซึ่งแสดงข้อมูลในหลายปีที่ผ่านมา ข้อมูลถูกกรองตามปีโดยใช้ฟิลด์วันที่เป็นเกณฑ์ตัวกรอง ในแต่ละปีฉันมีมุมมองสิ่งที่แนบที่ฉันต้องกรองเพิ่มเติมในแต่ละสัปดาห์ แทนที่จะกำหนดวันที่แน่นอนสำหรับสัปดาห์ของแต่ละปีและป้อนด้วยตนเองเป็นเกณฑ์ตัวกรองฉันสงสัยว่ามีวิธีใดที่จะเพิ่มเกณฑ์ตัวกรองเพื่อกรองตามจำนวนสัปดาห์เช่นสัปดาห์ที่ 1 ถึงสัปดาห์ที่ 52 เฉพาะวันที่ต้องตั้งค่าเป็นปีสำหรับแต่ละมุมมองและส่วนที่เหลือจะเกิดขึ้นโดยอัตโนมัติตามหมายเลขสัปดาห์ ฉันกำลังรวบรวมข้อมูลจำนวนมากตามปีและสัปดาห์ในมุมมองตารางโดยที่แต่ละคอลัมน์เป็นไฟล์แนบมุมมองเพิ่มเติมและพยายามหลีกเลี่ยงการป้อนตัวกรองสำหรับวันที่สัปดาห์ต่อปีด้วยตนเอง ไม่มีใครมีคำแนะนำ / คำแนะนำสำหรับฉันเกี่ยวกับเรื่องนี้? ขอบคุณมาก ๆ. นี่คือรหัสที่ฉันกำลังเล่นกับ: function x_week_start($date) { $ts = strtotime($date); $start = (date('w', $ts) == 0) ? $ts : strtotime('last sunday', $ts); return date('Y-m-d', $start); } function x_week_end($date) { $ts = strtotime($date); $start = (date('w', …
9 7  views 

2
แสดงรายการเมนูที่ จำกัด การเข้าถึงผู้ใช้ที่ไม่ระบุชื่อ
ฉันมีเว็บไซต์ที่ใช้โมดูลส่วนตัวเพื่อตั้งค่าการเข้าถึงเนื้อหาและแน่นอนหน้าบางหน้าของฉันมีรายการเมนู ตอนนี้ถ้าฉันตั้งค่าหน้าเว็บให้เป็นส่วนตัวผู้ใช้เท่านั้นที่มีสิทธิ์ที่เหมาะสมจะเห็นว่าเป็นสิ่งที่ยอดเยี่ยมและสิ่งที่ฉันต้องการ แต่ฉันมีปัญหาเล็กน้อยกับรายการเมนูพวกเขาหายไปหากเนื้อหาที่กำหนดให้พวกเขาไม่ใช่สาธารณะ (เช่นหน้าที่กำหนดให้พวกเขาเป็นส่วนตัว) นี่ก็โอเค แต่ฉันอยากจะยังสามารถแสดงรายการเหล่านั้นได้ ในการนำทางดังนั้นหากผู้ใช้คลิกที่พวกเขามันจะพาพวกเขาไปที่หน้าเข้าสู่ระบบขอให้พวกเขาป้อนรายละเอียดเพื่อที่จะเห็นหน้านั้น ดังนั้นโดยทั่วไปฉันต้องการเปลี่ยนพฤติกรรมของรายการเมนูในแบบที่พวกเขาจะปรากฏแก่สมาชิกนิรนามและสมาชิกที่ลงทะเบียนของเว็บไซต์ แต่เมื่อคุณคลิกที่พวกเขาคุณจะสามารถดูหน้า (ถ้าคุณเข้าสู่ระบบ ใน) หรือถูกเปลี่ยนเส้นทางไปยังหน้าเข้าสู่ระบบ (หากไม่ระบุชื่อ) ฉันพบโซลูชันนี้ซึ่งไม่ใช่วิธีที่ดีที่สุดสำหรับฉันเนื่องจากฉันมีหลายหน้าเช่นนั้นฉันจึงมองหาวิธีที่ดีกว่า ฉันได้ลองใช้โมดูลการมองเห็นรายการเมนูแล้วแต่นั่นก็ไม่ได้ช่วยอะไรเช่นกัน! ฉันจะทำสิ่งนี้ให้สำเร็จได้อย่างไร Luca
9 7  routes  users 

5
บังคับให้สร้างรูปแบบรูปภาพบนโหนดบันทึก
ฉันยังคงมีปัญหาของฉันอธิบายที่นี่รูปแบบภาพที่นำมาใช้ใหม่ในรายการคอลเลกชันสนามแต่ฉันให้ขึ้นเพื่อแก้ปัญหา วิธีแก้ปัญหาที่เกิดขึ้นในใจของฉันคือการบังคับให้สร้างจินตภาพบนโหนด มีความเป็นไปได้ที่จะทำเช่นนั้น?
9 7  media  entities 

2
การโยกย้ายล้มเหลว: เมื่ออนุประโยคไม่ชัดเจน
ฉันทำงานกับmigrateโมดูลเป็นครั้งแรกและฉันทำงานกับdb_selectapi นิดหน่อย แต่ฉันพบข้อผิดพลาด ฉันกำลังพยายามแปลงป้ายกำกับเก่า ๆ ให้เป็นอนุกรมวิธานแบบ drupal เมื่อฉันเรียกดู/admin/content/migrateเพจแบบสอบถามของฉันจะทำอย่างถูกต้องและแสดงจำนวนแถวที่ถูกต้องที่ควรย้ายข้อมูล อย่างไรก็ตามเมื่อฉันพยายามเรียกใช้การนำเข้าฉันได้รับข้อผิดพลาดนี้: การโยกย้ายล้มเหลวโดยมีข้อยกเว้นปลั๊กอินต้นทาง: SQLSTATE [23000]: การละเมิดข้อ จำกัด ด้านความสมบูรณ์: 1052 คอลัมน์ 'labelId' ในส่วนคำสั่งไม่ชัดเจน นี่คือรหัสที่ฉันมีในคลาส LabelMigration ของฉัน: $this->map = new MigrateSQLMap($this->machineName, array( 'labelId' => array('type' => 'int', 'not null' => TRUE) ), MigrateDestinationTerm::getKeySchema() ); $query = db_select('migrate_account_label', 'l') ->fields('l', array('labelId', 'label')) ; $query->leftJoin('migrate_asset_labels_membership', 'lm', 'l.labelId …
9 7  database  migration 

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