Drupal

คำถาม & คำตอบสำหรับนักพัฒนาและผู้ดูแลระบบ Drupal

13
ฉันจะซ่อนโหนดที่ไม่ควรเข้าถึงได้โดยตรงจากผู้ใช้และเครื่องมือค้นหาได้อย่างไร
ฉันพบว่ามีบางครั้งที่ฉันมีโหนดที่มีเนื้อหาที่จะแสดงที่อื่น แต่ไม่ควรดูโดยตรง นั่นคือไม่มีใครควรไปที่โหนด / 1234 แต่เนื้อหาในโหนด 1234 ควรแสดงที่อื่น ตัวอย่างเช่นฉันสร้างหน้าเกี่ยวกับเนื้อหาแบบแท็บโดยใช้มุมมอง ดังนั้นจึงมีหน้า "เกี่ยวกับฉัน", "เกี่ยวกับเรา" และ "เกี่ยวกับพวกเขา" ทั้งหมดเหล่านี้จะแสดงในหน้าเดียวกับแท็บโดยใช้มุมมอง ดังนั้นฉันไม่ต้องการให้ผู้คนไปที่โหนด "เกี่ยวกับเรา" โดยตรงเพราะพวกเขาจะไม่เห็นแท็บสำหรับหน้าอื่น ๆ ในขณะเดียวกันฉันไม่ต้องการให้ Google ให้การเชื่อมโยงโดยตรงกับโหนดนี้แก่ผู้อื่นฉันต้องการ จำกัด การเข้าถึงเพื่อให้ผู้ใช้สามารถเข้าถึงได้ผ่านมุมมอง (เช่นแท็บ) ดังนั้นฉันจึงจำเป็นต้อง จำกัด การเข้าถึงโหนดลบมันออกจากผลการค้นหา Drupal และตรวจสอบให้แน่ใจว่า Google ไม่ได้ไปรับมัน ข้อเสนอแนะใด ๆ
51 nodes 

4
ฉันจะรับโหนด ID ปัจจุบันได้อย่างไร
ใน Drupal 7 ถ้าฉันต้องการรับ node id ของโหนดที่แสดงอยู่ในปัจจุบัน (เช่นnode/145) ฉันจะได้มันมาพร้อมกับarg()ฟังก์ชั่น ในกรณีนี้arg(1)จะกลับ 145 ฉันจะประสบความสำเร็จใน Drupal 8 ได้อย่างไร
51 nodes  8 

7
เงื่อนไข“ OR” ใน db_select ()
ฉันกำลังศึกษาเลเยอร์ฐานข้อมูลใหม่และฉันดีใจที่มันเปลี่ยนเป็นเลเยอร์ OOP db_select()ฉันต้องใช้แบบสอบถามกับ ฉันพบว่าฉันสามารถเพิ่มWHEREคำสั่งด้วย$query->condition()แต่โดยค่าเริ่มต้นเงื่อนไขจะถูกรวมเข้าด้วยกัน ฉันหรือเงื่อนไขด้วยกันได้อย่างไร? $query=db_select('users','u')->fields('u',array('uid','title','created','uid')); $query->join('flag_content','fc' , 'u.uid = fc.content_id'); $query->condition('fc.fid', '5' , '='); $query->condition('fc.uid', $uid , '='); //…
51 7  database 

7
วิธีใช้เทมเพลตไฟล์เพื่อจัดทำธีมของฟอร์ม
ในขณะที่โหนดความคิดเห็นบล็อกและสิ่งอื่น ๆ อีกมากมายใน Drupal ได้รับการจัดแนวโดยใช้ไฟล์เทมเพลตธีม (เช่น node.tpl.php) รูปแบบเป็นเรื่องที่แตกต่าง ไม่มีไฟล์เท็มเพลตธีมสำหรับแบบฟอร์ม ฉันจะขอรับฟอร์มเฉพาะเพื่อใช้เท็มเพลตธีมที่กำหนดเองได้อย่างไร?
50 forms  theming 

6
ฉันจะนำเข้าการกำหนดค่าบนไซต์อื่นได้อย่างไร
ฉันมีข้อผิดพลาดนี้เมื่อฉันพยายามนำเข้าการกำหนดค่าของไซต์อื่น: ไม่สามารถนำเข้าการกำหนดค่าฉากได้เนื่องจากมาจากไซต์อื่นนอกเหนือจากไซต์นี้ คุณสามารถซิงโครไนซ์การกำหนดค่าระหว่างอินสแตนซ์ที่โคลนของไซต์นี้เท่านั้น ฉันมีลูกค้า 10 คนและฉันต้องการซิงค์การกำหนดค่าไซต์ของฉันกับเว็บไซต์ 10 แห่ง UUID ของไซต์เป็นปัญหาในการแบ่งปันการกำหนดค่ากับเว็บไซต์อื่น มีวิธีแก้ไขไหม?


17
การกำหนดค่าไดเรกทอรีชั่วคราว
ฉันเพิ่งย้ายไซต์จาก localhost ไปเป็น VPS ฉันจัดการเพื่อให้ไฟล์สาธารณะและส่วนตัวเขียนได้; อย่างไรก็ตามฉันไม่แน่ใจว่าจะหาโฟลเดอร์ชั่วคราวได้อย่างไรและจะเปลี่ยนสิทธิ์อย่างไร ฉันได้รับข้อความนี้: ไฟล์ที่ระบุชั่วคราว: // file3Hl91E ไม่สามารถคัดลอกได้เนื่องจากไดเรกทอรีปลายทางไม่ได้รับการกำหนดค่าอย่างเหมาะสม ปัญหานี้อาจเกิดจากปัญหาเกี่ยวกับการอนุญาตของไฟล์หรือไดเรกทอรี ข้อมูลเพิ่มเติมมีอยู่ในบันทึกของระบบ ฉันใช้ Virtualmin, Drupal 7 และเซิร์ฟเวอร์ Debian /tmpไดเรกทอรีชั่วคราวของฉันปัจจุบันคือ
48 7  files 

5
ฉันจะรับ node ID จาก URL ได้อย่างไร
จนถึงตอนนี้ฉันได้พบกับ 3 ฟังก์ชั่นเหล่านี้ใน Drupal 7 แต่ฉันไม่แน่ใจจริงๆว่าความแตกต่างระหว่างพวกเขาคืออะไรและสิ่งใดที่เหมาะสมกว่าที่จะได้รับ ID โหนดในฟังก์ชั่นการเตรียมบล็อก menu_get_object() menu_get_item() drupal_lookup_path() คุณสามารถให้ข้อมูลเชิงลึกใด ๆ ให้ฉัน
47 nodes  uri 

3
จะให้แม่แบบสำหรับโหมดมุมมองเฉพาะได้อย่างไร
ฉันต้องการธีมของโหมดมุมมองผลการค้นหาด้วยเทมเพลต ฉันมีมันในหัวของฉันที่ตั้งชื่อโหนดไฟล์แม่แบบ - บทความ - search-result.tpl.php จะทำเคล็ดลับ แต่ฉันผิดอย่างชัดเจนเกี่ยวกับที่ ฉันรู้ว่าฉันสามารถทำโหนด - article.tpl.php และในการตรวจสอบนี้ $ view_mode แต่สิ่งนี้น่าอึดอัดใจกับโหมดมุมมองอื่น ๆ ทั้งหมดที่ฉันไม่ต้องการเทมเพลต ไอเดีย?
46 7  theming  entities 


3
วิธีการย้ายจากสภาพแวดล้อมการทดสอบไปยังสภาพแวดล้อมการผลิต?
การโอนย้ายมาจากสภาพแวดล้อมท้องถิ่นไปยังสภาพแวดล้อมการผลิต สภาพแวดล้อมการผลิตใช้เวลาพอสมควรและสร้างบทความจำนวนมาก เพื่อเพิ่มสิ่งใหม่ ๆ ในเว็บไซต์ของฉันฉันเพิ่มธีมที่กำหนดเองและติดตั้ง CCK, Views และโมดูลอื่น ๆ ในสภาพแวดล้อมการทดสอบในพื้นที่ของฉัน เมื่อสภาพแวดล้อมการทดสอบภายในเครื่องเสร็จสิ้นฉันจะย้ายข้อมูลไปยังสภาพแวดล้อมการผลิตได้อย่างไรโดยไม่ทำลายเนื้อหาของฐานข้อมูล
46 7  migration  staging 

5
สร้างผู้ใช้โดยทางโปรแกรมและให้บทบาทแก่พวกเขา
ฉันกำลังสร้างผู้ใช้โดยทางโปรแกรมเช่นนี้: $newUser = array( 'name' => $mail, 'pass' => 'password', // note: do not md5 the password 'mail' => $mail, 'status' => 1, 'init' => $mail, 'roles' => array(5) ); $user = user_save(null, $newUser); ฉันมีบทบาทกับ ID บทบาทเท่ากับห้า; เมื่อฉันสร้างผู้ใช้ในตาราง "users_roles" มีเพียงแถวที่มีค่า 0 สำหรับ ID บทบาท แต่ถ้าฉันพิมพ์วัตถุผู้ใช้ด้วยvar_dump()ดูเหมือนว่าบทบาทจะถูกสร้างขึ้น ผมทำอะไรผิดหรือเปล่า?
46 7  users 

7
จะเปลี่ยนความยาวของการตั้งค่าฟิลด์ได้อย่างไร?
ฉันตั้งค่าเว็บไซต์หนึ่งครั้งเพื่อจำกัดความยาวของฟิลด์ และตอนนี้ลูกค้าต้องการเพิ่มตัวละครให้กับฟิลด์นั้นมากขึ้น ฉันไม่สามารถเปลี่ยนขนาดสูงสุดจาก Drupal ได้เนื่องจากฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้: มีข้อมูลสำหรับฟิลด์นี้ในฐานข้อมูล ไม่สามารถเปลี่ยนการตั้งค่าฟิลด์ได้อีกต่อไป อย่างไรก็ตามจะต้องมีวิธีแก้ปัญหา ฉันจะเปลี่ยนมันในฐานข้อมูล (เขตข้อมูลถูกนำไปใช้โดยโมดูลคอลเลกชันฟิลด์ )
46 7  entities  database 

5
คำสั่ง Drush เพื่อดาวน์โหลดและเปิดใช้งานโมดูล
ในการดาวน์โหลดและติดตั้งโมดูลฉันเรียกใช้: drush dl module_name drush en module_name -y ฉันใส่มันในฟังก์ชั่นสคริปต์ Bash และเรียก "drin module_name" เพื่อทำให้ง่ายขึ้น function drin(){ drush dl $1 drush en $1 -y } มีคำสั่งหนึ่งบรรทัดใน Drush เพื่อดาวน์โหลดและเปิดใช้งานโมดูลหรือไม่
46 drush 

5
สำหรับคนที่ไม่ใช่โปรแกรมเมอร์หรือกำลังเริ่มต้นเขา / เธอจะมีส่วนร่วมใน Drupal.org ได้อย่างไร?
ฉันได้พูดคุยกับคนที่เริ่มต้นในมหาวิทยาลัยเกี่ยวกับ Drupal แต่พวกเขาเป็นผู้เริ่มต้นในการเขียนโปรแกรม ดังนั้นพวกเขาจึงบอกฉันว่าพวกเขาสามารถมีส่วนร่วมใน Drupal หรือมีส่วนร่วมมากขึ้นได้อย่างไร อะไรคือคำแนะนำที่ดีที่สุดสำหรับพวกเขาที่จะมีส่วนร่วม .. หรือพวกเขาจะเริ่มต้นอย่างไรถ้าพวกเขามีทักษะโปรแกรม จำกัด คุณมีคำแนะนำอะไรบ้าง?

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