Joomla ไม่โหลด bootstrap CSS โดยอัตโนมัติ แต่โหลด JS หากแม่แบบของคุณใช้วิธีมาตรฐานเพื่อโหลดส่วนหัว Joomla:
<jdoc:include type="head" />
มันจะโหลดไฟล์ mootools, jquery และ bootstrap ตามลำดับนี้:
<script src="/media/system/js/mootools-core.js" type="text/javascript"></script>
<script src="/media/system/js/core.js" type="text/javascript"></script>
<script src="/media/system/js/caption.js" type="text/javascript"></script>
<script src="/media/system/js/mootools-more.js" type="text/javascript"></script>
<script src="/media/jui/js/jquery.min.js" type="text/javascript"></script>
<script src="/media/jui/js/jquery-noconflict.js" type="text/javascript"></script>
<script src="/media/jui/js/bootstrap.min.js" type="text/javascript"></script>
มันไม่ได้โหลดไฟล์ CSS คุณสามารถทดสอบได้โดยลบบรรทัดออกจากไฟล์เทมเพลตของคุณจากนั้นตรวจสอบว่าไฟล์ใหญ่ใดหายไป
bootstrap CSS ถูกโหลดโดยแม่แบบของคุณ Joomla (ตั้งแต่ 2.5 ฉันเชื่อว่า) รวม Bootstrap 2.x ไว้ในไฟล์มีเดียเพื่อให้เข้าถึงได้ง่าย Protostar ด้วยเหตุผลบางอย่างไม่เรียก bootstrap จากไฟล์สื่อ แต่พวกเขาได้คัดลอกและวาง CSS บูตทั้งหมดลงในไฟล์ template.css เฟรมเวิร์กอื่นเรียก Bootstrap ตัวอย่างเช่น Warp 7 จะมีช่องทำเครื่องหมายเพื่อเปิดใช้งานหรือปิดใช้งาน Bootstrap
เนื่องจากส่วนหน้าและส่วนหลังมีเทมเพลตที่แตกต่างกัน Bootstrap จึงสามารถโหลดหรือปิดการใช้งานสำหรับอันใดอันหนึ่งและไม่ใช่แบบอื่น ไม่มีการพึ่งพาหากคุณต้องการปิดการใช้งาน Bootstrap จากส่วนหน้าและไม่ใช่ส่วนหลัง
การตั้งค่าของฉันคือ Bootstrap 3 ดังนั้นในเทมเพลตที่กำหนดเองหลายแบบฉันได้ดาวน์โหลดและรวม bootstrap 3 css ไว้ในหัวเทมเพลตของฉันหลังบรรทัด joomla และภายในแท็ก head template ของฉัน:
$document = JFactory::getDocument();
$document->setMetaData( 'viewport', 'width=device-width, initial-scale=1, minimum-scale=1' );
$document->addStyleSheet($this->baseurl.'/templates/'.$this->template.'/css/bootstrap.min.css');
วิธีนี้แตกต่างกันเล็กน้อยสำหรับเฟรมเวิร์กเช่น Warp 7 นอกจากนี้คุณยังสามารถโหลดโดยตรงจาก bootstrap CDN url หากคุณต้องการ
ดังนั้น Joomla จะไม่บังคับให้คุณใช้ Bootstrap หรือ Bootstrap เวอร์ชั่นใด ๆ เป็นอย่างน้อยสำหรับ CSS คุณสามารถใช้กรอบการตอบสนองอื่น ๆ หากคุณต้องการ มันทำทั้งหมดในเทมเพลต ไม่จำเป็นต้องแฮ็กหรือปลั๊กอิน