it-swarm.dev

Quale Bootstrap versione dovrebbe essere usata v2.3 o v3 nelle nuove estensioni

Come sviluppatore di estensioni, sono ancora confuso quale Bootstrap da usare nella mia prossima estensione.

  • In molte discussioni ho scoperto che Joomla 3.x non utilizzerà bootstrap-3.0.
  • La maggior parte dei provider di modelli utilizza bootstrap v3
  • Molte estensioni utilizzano anche bootstrap v3

Cosa optare?

9
Shyam

Joomla 3.x viene fornito con i file per Bootstrap 2 e, a causa della compatibilità con le versioni precedenti, è improbabile che ciò cambi nella serie Joomla 3.x.

È importante sapere che Bootstrap è costituito da due aree principali:

  • I file CSS
  • Il framework JavaScript

[~ ~ #] css [~ ~ #]

Joomla ha quei file inclusi sia come file MENO di origine che come file CSS compilati. Lo stesso Joomla non carica alcun file Bootstrap file CSS. Dipende dal modello decidere se vuole usare quei file o spedirli con i propri file CSS.

Nel backend, il modello attivo di solito è "Isis", che utilizza pesantemente i file Bootstrap 2. Pertanto ha senso utilizzare lo stile Bootstrap 2 nel back-end delle tue estensioni. Soprattutto perché non ci sono comunque molti modelli di amministrazione alternativi

In frontend tuttavia è un argomento completamente diverso. Non hai idea di quale modello verrà utilizzato dall'utente e su quale framework si baserà. Personalmente mi accontento di usare Bootstrap 2 anche qui per il solo motivo che l'output core usa anche quelli. Quindi è alta la possibilità che un template supporti quelle classi. Altrimenti fornisce un override per l'output. Se utilizza le sostituzioni per core, probabilmente anche l'estensione avrà bisogno di una sostituzione.

Puoi ovviamente aggiungere il supporto per Bootstrap 3, ma ciò significa raddoppiare il tuo lavoro. Tuttavia non fornirei mai solo Bootstrap 3 layout senza un'opzione caricare Bootstrap 2 quelli.

JavaScript

Joomla ha dei metodi per caricare Bootstrap codice JavaScript, come per tooltip o tab. Questo codice può e deve essere usato dalle estensioni. Assicurati solo di caricarli nei tuoi layout in modo che possano essere sostituiti dai template se necessario.

6
Bakual

Come hai già sottolineato, Joomla 3.x non utilizzerà Bootstrap 3.x, quindi dovresti decidere di andare avanti usando Bootstrap 3, quindi l'utente caricherà 2 versioni di Bootstrap che potrebbe causare conflitti e ridurre anche la velocità di caricamento della pagina.

Quello che potresti fare è scrivere un piccolo script per rilevare quale versione di Bootstrap sta alimentando il modello e usa quella versione per modellare la tua estensione. Penso che NoNumber o Akeeba forniscano la possibilità di scegliere tra Bootstrap versione che desideri utilizzare. Non ricordo quale, ma potrebbe valere la pena dare un'occhiata a come lo fanno.

Ma piuttosto che usare Bootstrap per definire lo stile della tua estensione, perché non applicare uno stile personalizzato come un'altra opzione? Non tutti i modelli sono basati su Bootstrap.

Spero che questo ti dia una piccola intuizione.

1
Lodder

Nelle estensioni dovresti sempre cercare di utilizzare Bootstrap 2 sintassi nelle tue estensioni - specialmente nel backend. Questa è la versione ufficialmente supportata dal core di Joomla e quindi significa che otterrai sempre il tuo lo stile funziona come previsto e non devi spedire bootstrap con il tuo modello. Le estensioni fornite con Bootstrap 3 devono includere questo (nota il piuttosto grande Classe Akeeba Strapper fornita ad esempio con i prodotti Akeeba).

I provider di modelli che usano Bootstrap 3 normalmente consente bootstrap 2 sintassi modificando i loro meno file per prendere entrambe le versioni di bootstrap in account. Coloro che non dovrebbero aspettarsi di dover utilizzare il modello hanno comunque la precedenza.

Il punto in cui Joomla viene spedito con Bootstrap 2 e non passa a Bootstrap 3 è quindi esiste un framework CSS/JS con estensione incrociata ab/c nell'intero Joomla serie.

1
George Wilson

Se hai bisogno di usare Bootstrap 3, secondo me dovresti spaziare sul nome dell'intero Bootstrap 3 CSS (come Community Builder V2), ad esempio la funzione principale di joomla per modificare menu e moduli nel frontend si rompono, se si utilizza BS3 per frontend.

Citazione dal forum di Community Builder:

Link originale: http://www.joomlapolis.com/forum/6-news-and-publicity/224106-community-builder-20-b2-released?start=6

Ma CB2.0 utilizzerà Bootstrap 2 o 3?

Bootstrap 3.

E CB caricherà sempre l'intero Bootstrap, anche se solo il modulo di login su un sito), perché Bootstrap sta caricando anche cose superflue.

No, non usiamo nessuno di Twitter Bootstrap JS.

Al momento utilizziamo i suoi CSS (abbiamo altri plug-in jQuery migliori, che forniscono la funzionalità JS). Carichiamo anche Twitter Bootstrap con uno spazio dei nomi, quindi è impossibile che sia in conflitto o alterare lo stile al di fuori dello spazio dei nomi. Al momento non lo cariciamo sempre. Carichiamo solo il nostro template.css e fontawesome.css in qualsiasi momento quando viene caricato il modello CBs. Nota I moduli CBs non usano lo stile CB. Sono progettati per adattarsi a Joomla 1: 1 in modo da adattarsi correttamente al tuo sito.

Un'altra soluzione è quella di utilizzare un framework come Skeleton o Foundation, per evitare il problema sopra riportato.

0
Joomla Agency