Która wersja Bootstrap powinna być używana w wersji 2.3 lub v3 w nowych rozszerzeniach

9

Jako programista rozszerzeń wciąż nie wiem, która wersja Bootstrap będzie używana w moim nadchodzącym rozszerzeniu.

  • W wielu dyskusjach odkryłem, że Joomla 3.x nie będzie używać bootstrap-3.0.
  • Większość dostawców szablonów używa bootstrap v3
  • Wiele rozszerzeń używa także bootstrap v3

Co wybrać?

Shyam
źródło

Odpowiedzi:

6

Joomla 3.x jest dostarczana z plikami dla Bootstrap 2, a ze względu na kompatybilność wsteczną prawdopodobnie nie zmieni się to w serii Joomla 3.x.

Ważne jest, aby wiedzieć, że Bootstrap składa się z dwóch głównych obszarów:

  • Pliki CSS
  • Struktura JavaScript

CSS

Joomla ma te pliki zawarte zarówno jako źródłowe pliki LESS, jak i skompilowane pliki CSS. Sama Joomla nie ładuje żadnych plików CSS Bootstrap. To szablon decyduje, czy chce użyć tych plików, czy dostarczyć z własnymi plikami CSS.

W backendie aktywnym szablonem jest zwykle „Isis”, która intensywnie wykorzystuje pliki Bootstrap 2. Dlatego warto zastosować styl Bootstrap 2 w backendie rozszerzenia. Zwłaszcza, że ​​i tak nie ma wielu alternatywnych szablonów administracyjnych

W interfejsie jest to jednak zupełnie inny temat. Nie masz pojęcia, jakiego szablonu użyje użytkownik i na jakich ramach będzie on oparty. Osobiście decyduję się również na użycie stylizacji Bootstrap 2 tylko z tego powodu, że używa ich również rdzeń wyjściowy. Dlatego są duże szanse, że szablon będzie obsługiwał te klasy. W przeciwnym razie zapewnia przesłonięcie danych wyjściowych. Jeśli użyje przesłonięć dla rdzenia, twoje rozszerzenie prawdopodobnie również będzie wymagać przesłonięcia.

Możesz oczywiście również dodać obsługę Bootstrap 3, ale oznacza to podwojenie pracy. Nigdy jednak nie zapewniłbym tylko układów Bootstrap 3 bez opcji ładowania tych Bootstrap 2.

JavaScript

Joomla ma metody ładowania kodu JavaScript Bootstrap, na przykład podpowiedzi lub kart. Ten kod może i powinien być używany przez rozszerzenia. Wystarczy załadować je do układów, aby w razie potrzeby można je było zastąpić szablonami.

Bakual
źródło
1

Jak już wskazałeś, Joomla 3.x nie będzie używać Bootstrap 3.x, dlatego jeśli zdecydujesz się na korzystanie z Bootstrap 3, wówczas użytkownik będzie ładował 2 wersje Bootstrap, które mogą powodować konflikty, a także zmniejszać prędkości ładowania strony.

Możesz napisać mały skrypt, aby wykryć, która wersja Bootstrap zasila szablon i użyj tej wersji do stylizowania rozszerzenia. Myślę, że NoNumber lub Akeeba umożliwiają wybranie jednej z wersji Bootstrap, której chcesz użyć. Nie pamiętam, które z nich mogą być warte spojrzenia na to, jak to robią.

Ale zamiast używać Bootstrap do stylizowania rozszerzenia, dlaczego nie zrobić niestandardowej stylizacji jako innej opcji? Nie wszystkie szablony są oparte na Bootstrap.

Mam nadzieję, że daje to trochę wglądu.

Lodder
źródło
Problem polega na tym, że musimy dokonać rozszerzenia, aby nie kolidowało to z dostawcami szablonów. Jeśli wykonamy niestandardowe stylizacje, klienci będą mieli problem z używaniem różnych szablonów.
Shyam,
Najlepiej trzymać się Bootstrap 2.x. Większość szablonów dla Joomla wciąż opiera się na tej wersji, ponieważ jest ona fabrycznie wyposażona w Joomla. Problem czasami polega na tym, że nie możesz zaspokoić potrzeb każdej osoby. Na przykład prawdopodobnie istnieje kilku dostawców szablonów, którzy używają Foundation do zasilania swoich szablonów, ale nie znam żadnych programistów, którzy wspierają klasy Foundation
Lodder
1

W rozszerzeniach zawsze powinieneś starać się używać składni Bootstrap 2 w swoich rozszerzeniach - szczególnie w backendie. Jest to oficjalnie obsługiwana wersja jądra Joomla, dlatego oznacza, że ​​zawsze będziesz mieć stylizację zgodną z oczekiwaniami i nie musisz dostarczać bootstrapu ze swoim szablonem. Rozszerzenia dostarczane z Bootstrap 3 muszą to uwzględniać (zwróć uwagę na dość dużą klasę Akeeba Strapper, która jest dostarczana na przykład z produktami Akeeba).

Dostawcy szablonów, którzy używają Bootstrap 3, zwykle zezwalają na składnię Bootstrap 2, edytując swoje mniej plików, aby uwzględnić obie wersje Bootstrap. Ci, którzy nie powinni oczekiwać, że będą musieli użyć szablonu, nadpisują.

Istotą wysyłki Joomla z Bootstrap 2 i nieprzeprowadzania się do Bootstrap 3 jest to, że w całej serii Joomla istnieje ab / c frameworki CSS / JS z rozszerzeniem krzyżowym.

George Wilson
źródło
0

Jeśli potrzebujesz użyć Bootstrap 3, moim zdaniem powinieneś używać przestrzeni nazw całego CSS Bootstrap 3 (jak Community Builder V2), np. Funkcja rdzenia joomla do edycji menu i modułów w interfejsie ulegnie uszkodzeniu, jeśli użyjesz BS3 jako interfejsu.

Cytat z forum Community Builder:

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

Ale czy CB2.0 będzie używać Bootstrap 2 lub 3?

Bootstrap 3.

I CB zawsze ładuje całą bibliotekę Bootstrap, także jeśli jest to tylko moduł logowania na stronie), ponieważ Bootstrap ładuje również ogromne niepotrzebne rzeczy.

Nie, nie korzystamy z żadnego z Twitter Bootstrap JS.

Obecnie używamy tylko jego CSS (mamy inne, lepsze wtyczki jQuery, które zapewniają funkcjonalność JS). Ładujemy również Twitter Bootstrap z przestrzenią nazw, więc nie jest możliwe konfliktowanie lub zmiana stylu poza przestrzenią nazw. W tej chwili nie ładujemy go cały czas. Nasz szablon template.css i fontawesome.css ładujemy tylko przez cały czas ładowania szablonu CBs. Uwaga Moduły CB nie używają stylu CB. Są zaprojektowane tak, aby pasowały do ​​Joomla 1: 1, dzięki czemu moduły pasują do Twojej witryny.

Innym rozwiązaniem jest użycie frameworka takiego jak Skeleton lub Foundation, aby uniknąć powyższego problemu.

Agencja Joomla
źródło