Quelle version Bootstrap doit être utilisée v2.3 ou v3 dans les nouvelles extensions

9

En tant que développeur d'extensions, je ne sais toujours pas quelle version Bootstrap utiliser dans ma prochaine extension.

  • Dans de nombreuses discussions, j'ai trouvé que Joomla 3.x n'utilisera pas bootstrap-3.0.
  • La plupart des fournisseurs de modèles utilisent Bootstrap v3
  • De nombreuses extensions utilisent également bootstrap v3

Que choisir?

Shyam
la source

Réponses:

6

Joomla 3.x est livré avec les fichiers pour Bootstrap 2, et en raison de la compatibilité descendante, cela ne devrait pas changer dans la série Joomla 3.x.

Il est important de savoir que Bootstrap comprend deux domaines principaux:

  • Les fichiers CSS
  • Le framework JavaScript

CSS

Joomla a ces fichiers inclus à la fois en tant que fichiers LESS source et fichiers CSS compilés. Joomla lui-même ne charge aucun fichier CSS Bootstrap. C'est au modèle de décider s'il souhaite utiliser ces fichiers ou être livré avec ses propres fichiers CSS.

Dans le backend, le modèle actif est généralement "Isis", qui utilise massivement les fichiers Bootstrap 2. Il est donc logique d'utiliser le style Bootstrap 2 dans votre backend d'extension. D'autant plus qu'il n'y a pas beaucoup de modèles d'administration alternatifs de toute façon

En frontend cependant c'est un sujet complètement différent. Vous n'avez aucune idée du modèle que l'utilisateur utilisera et sur quel framework celui-ci sera basé. Personnellement, je me contente d'utiliser le style Bootstrap 2 ici également pour la seule raison que la sortie principale les utilise également. Ainsi, les chances sont élevées qu'un modèle supporte ces classes. Sinon, il fournit un remplacement pour la sortie. S'il utilise des remplacements pour le noyau, votre extension aura probablement besoin d'un remplacement également de toute façon.

Vous pouvez bien sûr également ajouter la prise en charge de Bootstrap 3, mais cela signifie doubler votre travail. Cependant, je ne fournirais jamais que des mises en page Bootstrap 3 sans une option pour charger celles Bootstrap 2.

Javascript

Joomla a des méthodes pour charger le code JavaScript Bootstrap, comme pour les info-bulles ou les onglets. Ce code peut et doit être utilisé par les extensions. Assurez-vous simplement de les charger dans vos mises en page afin qu'elles soient remplaçables par les modèles si nécessaire.

Bakual
la source
1

Comme vous l'avez déjà souligné, Joomla 3.x n'utilisera pas Bootstrap 3.x, par conséquent, si vous décidez d'utiliser Bootstrap 3, l'utilisateur chargera 2 versions de Bootstrap, ce qui peut provoquer des conflits et réduira également vitesses de chargement des pages.

Ce que vous pourriez faire est d'écrire un petit script pour détecter quelle version de Bootstrap alimente le modèle et utiliser cette version pour styliser votre extension. Je pense que NoNumber ou Akeeba offrent la possibilité de choisir la version Bootstrap que vous souhaitez utiliser. Je ne me souviens pas lequel, mais cela pourrait valoir la peine de voir comment ils le font.

Mais plutôt que d'utiliser Bootstrap pour styliser votre extension, pourquoi ne pas faire un style personnalisé comme autre option? Tous les modèles ne sont pas basés sur Bootstrap.

J'espère que cela vous donnera un petit aperçu.

Lodder
la source
Le problème est que nous devons faire une extension afin qu'elle n'entre pas en conflit avec les fournisseurs de modèles. Si nous faisons un style personnalisé, les clients auront des problèmes lors de l'utilisation de différents modèles.
Shyam
Il vaut mieux s'en tenir à Bootstrap 2.x. La plupart des modèles pour Joomla sont toujours basés sur cette version car ils sont pré-emballés avec Joomla. Le problème est parfois que vous ne pouvez pas répondre à toutes les personnes. Par exemple, certains fournisseurs de modèles utilisent probablement Foundation pour alimenter leurs modèles, mais je ne connais aucun développeur prenant en charge les classes Foundation
Lodder
1

Dans les extensions, vous devriez toujours chercher à utiliser la syntaxe Bootstrap 2 dans vos extensions - en particulier dans le backend. Il s'agit de la version officiellement prise en charge par le noyau Joomla et signifie donc que vous allez toujours faire en sorte que votre style fonctionne comme prévu et que vous n'avez pas à expédier le bootstrap avec votre modèle. Les extensions livrées avec Bootstrap 3 doivent inclure cela (notez la très grande classe Akeeba Strapper fournie avec les produits Akeeba par exemple).

Les fournisseurs de modèles qui utilisent Bootstrap 3 autorisent normalement la syntaxe de bootstrap 2 en modifiant leurs fichiers moins pour prendre en compte les deux versions de bootstrap. Ceux qui ne devraient pas s'attendre à avoir besoin d'utiliser des remplacements de modèle de toute façon.

Le point de départ de Joomla avec Bootstrap 2 et de ne pas passer à Bootstrap 3 est qu'il existe un framework CSS / JS à extension croisée ab / c sur l'ensemble de la série Joomla.

George Wilson
la source
0

Si vous devez utiliser Bootstrap 3, à mon avis, vous devriez nommer l'espace CSS Bootstrap 3 entier (comme Community Builder V2), par exemple, la fonction principale de joomla pour modifier les menus et les modules dans le frontend est cassée, si vous utilisez BS3 pour le frontend.

Citation du forum Community Builder:

Lien d'origine: http://www.joomlapolis.com/forum/6-news-and-publicity/224106-community-builder-20-b2-released?start=6

Mais CB2.0 utilisera-t-il Bootstrap 2 ou 3?

Bootstrap 3.

Et CB chargera-t-il toujours la bibliothèque Bootstrap complète, même si ce n'est que le module de connexion sur un site), car Bootstrap charge également d'énormes choses inutiles.

Non, nous n'utilisons aucun de Twitter Bootstrap JS.

Nous utilisons uniquement son CSS pour le moment (nous avons d'autres plugins jQuery, meilleurs, qui fournissent la fonctionnalité JS). Nous chargeons également Twitter Bootstrap avec un espace de noms, il est donc impossible qu'il entre en conflit ou modifie le style en dehors de l'espace de noms. À l'heure actuelle, nous ne le chargeons pas tout le temps. Nous ne chargeons nos template.css et fontawesome.css qu'à tout moment lorsque le modèle CBs est chargé. Remarque Les modules CB n'utilisent pas le style CB. Ils sont conçus pour correspondre à Joomla 1: 1 afin que les modules s'intègrent correctement avec votre site.

Une autre solution consiste à utiliser un framework comme Skeleton ou Foundation, pour éviter le problème ci-dessus.

Agence Joomla
la source