Joomla ne charge pas automatiquement le CSS d'amorçage, mais il charge le JS. Si votre modèle utilise la méthode standard pour charger la tête Joomla:
<jdoc:include type="head" />
Il chargera les fichiers mootools, jquery et bootstrap dans cet ordre:
<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>
Il ne charge pas les fichiers CSS. Vous pouvez le tester en supprimant la ligne de votre fichier modèle, puis en vérifiant quels fichiers de tête manquent.
Le CSS d'amorçage est chargé par votre modèle. Joomla (depuis 2.5 je crois) a inclus Bootstrap 2.x dans leurs fichiers multimédias pour un accès facile. Pour une raison quelconque, Protostar n'appelle pas bootstrap à partir des fichiers multimédias. Au lieu de cela, ils ont copié et collé la totalité du CSS d'amorçage dans leur fichier template.css. D'autres frameworks appellent Bootstrap. Warp 7, par exemple, possède une case à cocher pour activer ou désactiver Bootstrap.
Étant donné que le frontend et le backend ont des modèles différents, Bootstrap peut être chargé ou désactivé pour l'un et pas pour l'autre. Il n'y a aucune dépendance si vous souhaitez désactiver Bootstrap depuis le frontend et non le backend.
Ma préférence est Bootstrap 3, donc sur plusieurs modèles personnalisés différents, j'ai téléchargé et inclus le CSS bootstrap 3 dans ma tête de modèle après la ligne de tête joomla et dans mes balises de tête de modèle:
$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');
La méthode est légèrement différente pour les frameworks tels que Warp 7. Vous pouvez également charger directement à partir de l'URL du CDN de bootstrap si vous préférez.
Joomla ne vous oblige donc pas à utiliser Bootstrap ou toute version de Bootstrap, au moins pour le CSS. Vous pouvez utiliser d'autres cadres réactifs si vous le souhaitez. Tout est fait dans le modèle. Pas besoin de hacks ou de plugins.