ฉันจะรวมไลบรารี PHP ได้อย่างไร


12

ใน Drupal 7 มีhook_library()และdrupal_add_library()ที่สามารถใช้เพื่อจัดการไลบรารี JS และ CSS ฉันกำลังมองหาวิธีรวมไลบรารีPHPExelไว้ในการเผยแพร่ของฉัน

ฉันจะทำมันได้อย่างไร

คำตอบ:


9

hook_library()คิดเฉพาะกับไฟล์ Javascript และ CSS เท่านั้น สำหรับไลบรารี PHP คุณควรพิจารณาโมดูลLibrary API

โมดูลนี้แนะนำที่เก็บทั่วไปสำหรับไลบรารีในไซต์ / all / ไลบรารี resp sites // libraries สำหรับโมดูลที่สนับสนุน

ห้องสมุดภายนอก

หมายถึงไลบรารี ("ปลั๊กอิน") ที่ไม่ได้จัดส่งหรือทำแพ็กเกจกับโครงการบน drupal.org เราไม่ต้องการโฮสต์ไลบรารีของบุคคลที่สามบน drupal.org ด้วยเหตุผลหลายประการเริ่มต้นด้วยการให้สิทธิ์ใช้งานการดำเนินการต่อไปสู่วงรอบการเผยแพร่ที่แตกต่างกันและไม่จำเป็นต้องลงท้ายด้วยข้อผิดพลาดร้ายแรงเนื่องจากความขัดแย้งในการติดตั้งไลบรารีเดียวกันในหลายรุ่น Drupal 7 มีการสนับสนุนในตัวสำหรับไลบรารีที่ไม่ใช่ภายนอกผ่าน hook_library () แต่มันเหมาะสำหรับโครงการ drupal.org ที่รวมห้องสมุดของตัวเองเท่านั้น นั่นคือผู้สร้างโมดูลคือผู้สร้างและผู้ขายของห้องสมุด Libraries API ควรใช้สำหรับไลบรารีที่พัฒนาจากภายนอกและกระจาย ตัวอย่างง่ายๆคือปลั๊กอิน jQuery ของบุคคลที่สาม

โมดูล Library API ใช้ API ที่สามารถใช้จากโมดูลบุคคลที่สามเพื่อโหลดไลบรารีที่ติดตั้งบนไซต์ Drupal ข้อดีของการใช้ Library API คือจัดการการพึ่งพาระหว่างไลบรารีและการกำหนดเวอร์ชัน



2

ฉันไม่แน่ใจว่าการดำเนินการนี้จะทำงานกับไลบรารี php ที่กำหนดเองหรือไม่ แต่ฉันได้ใช้ขั้นตอนนี้ในการนำเข้าไฟล์ css และ js ที่กำหนดเองไปยังโครงการของฉัน

  1. ดาวน์โหลดและติดตั้งโมดูลไลบรารีจากที่นี่https://drupal.org/project/lไลบรารีและเปิดใช้งาน (อย่าลืมดาวน์โหลดติดตั้งและเปิดใช้งานการอ้างอิงทั้งหมดตามต้องการ)
  2. ไซต์ไดเรกทอรี / ทั้งหมด / ไลบรารีควรถูกสร้างขึ้น ถ้าไม่ใช่เพียงแค่สร้างไดเรกทอรีไลบรารีใน sites / all /
  3. ตอนนี้สร้าง php ของคุณรวมถึงผู้กำกับในไดเรกทอรี sites / all / libraries
  4. คัดลอกไฟล์ php ที่กำหนดเองทั้งหมดของคุณไปยังไดเรกทอรี sites / all / libraries / include

โดยสรุปฉันเดาว่าโมดูลไลบรารีควรให้คุณนำเข้าไลบรารี php, css และ js ที่กำหนดเองโดยอัตโนมัติและอื่น ๆ ในโครงการของคุณ

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