it-swarm-vi.com

Mà Bootstrap nên được sử dụng v2.3 hoặc v3 trong các tiện ích mở rộng mới

Là một nhà phát triển tiện ích mở rộng, tôi vẫn bối rối không biết Bootstrap sẽ được sử dụng trong tiện ích mở rộng sắp tới của tôi.

  • Trong nhiều cuộc thảo luận tôi thấy rằng Joomla 3.x sẽ không sử dụng bootstrap-3.0.
  • Hầu hết các nhà cung cấp mẫu sử dụng bootstrap v3
  • Nhiều tiện ích mở rộng cũng sử dụng bootstrap v3

Chọn gì?

9
Shyam

Joomla 3.x cung cấp các tệp cho Bootstrap 2 và do khả năng tương thích ngược, điều này không có khả năng thay đổi trong loạt Joomla 3.x.

Điều quan trọng cần biết là Bootstrap bao gồm hai khu vực chính:

  • Các tập tin CSS
  • Khung JavaScript

CSS

Joomla có các tệp đó bao gồm cả tệp LESS nguồn và tệp CSS được biên dịch. Bản thân Joomla không tải bất kỳ Bootstrap tệp CSS. Điều đó tùy thuộc vào mẫu để quyết định xem nó có muốn sử dụng các tệp đó hay giao hàng với các tệp CSS riêng hay không.

Trong phần phụ trợ, mẫu hoạt động thường là "Isis", sử dụng rất nhiều tệp Bootstrap 2. Do đó, nên sử dụng kiểu Bootstrap 2 trong phần mở rộng phụ trợ của bạn. Đặc biệt là vì không có nhiều mẫu quản trị thay thế nào

Tuy nhiên, ở phía trước, đây là một chủ đề hoàn toàn khác. Bạn không biết người dùng sẽ sử dụng mẫu nào và dựa trên khuôn khổ nào. Cá nhân tôi quyết định sử dụng Bootstrap 2 kiểu dáng ở đây cũng vì lý do duy nhất là đầu ra cốt lõi cũng sử dụng chúng. Vì vậy, rất có thể một mẫu sẽ hỗ trợ các lớp đó. Nếu không, nó cung cấp ghi đè cho đầu ra. Nếu nó sử dụng phần ghi đè cho lõi, thì phần mở rộng của bạn có thể cũng sẽ cần ghi đè.

Tất nhiên bạn cũng có thể thêm hỗ trợ cho Bootstrap 3, nhưng điều đó có nghĩa là tăng gấp đôi công việc của bạn. Tuy nhiên, tôi sẽ không bao giờ chỉ cung cấp Bootstrap 3 bố cục mà không có tùy chọn để tải Bootstrap 2 cái.

JavaScript

Joomla có các phương thức để tải Bootstrap Mã JavaScript, như đối với các chú giải công cụ hoặc tab. Mã này có thể và nên được sử dụng bởi các tiện ích mở rộng. Chỉ cần đảm bảo tải chúng trong bố cục của bạn để chúng có thể bị ghi đè bởi các mẫu nếu cần thiết.

6
Bakual

Như bạn đã chỉ ra, Joomla 3.x sẽ không sử dụng Bootstrap 3.x, do đó bạn nên quyết định sử dụng Bootstrap 3, sau đó người dùng sẽ tải 2 phiên bản Bootstrap có thể gây xung đột và cũng sẽ giảm tốc độ tải trang.

Những gì bạn có thể làm là viết một tập lệnh nhỏ để phát hiện phiên bản nào của Bootstrap đang cung cấp năng lượng cho mẫu và sử dụng phiên bản đó để tạo kiểu cho tiện ích mở rộng của bạn. Tôi nghĩ rằng NoNumber hoặc Akeeba cung cấp khả năng chọn bwteen Bootstrap phiên bản bạn muốn sử dụng. Tôi không thể nhớ phiên bản nào nhưng có thể đáng để xem cách họ làm điều đó.

Nhưng thay vì sử dụng Bootstrap để tạo kiểu cho tiện ích mở rộng của bạn, tại sao không thực hiện một số kiểu tùy chỉnh như một tùy chọn khác? Không phải tất cả các mẫu đều dựa trên Bootstrap.

Hy vọng điều này cung cấp cho bạn một cái nhìn sâu sắc.

1
Lodder

Trong các tiện ích mở rộng, bạn phải luôn luôn tìm cách sử dụng Bootstrap 2 cú pháp trong các tiện ích mở rộng của bạn - đặc biệt là trong phần phụ trợ. Đây là phiên bản được hỗ trợ chính thức bởi lõi Joomla và do đó có nghĩa là bạn sẽ luôn nhận được kiểu dáng hoạt động như mong đợi và bạn không phải giao hàng bootstrap với mẫu của bạn. Tiện ích mở rộng được gửi với Bootstrap 3 phải bao gồm điều này (lưu ý khá lớn Ví dụ như lớp Akeeba Strapper đi kèm với các sản phẩm Akeeba).

Các nhà cung cấp mẫu sử dụng Bootstrap 3 thường cho phép bootstrap 2 cú pháp bằng cách chỉnh sửa các tệp ít hơn của họ để đưa cả hai phiên bản bootstrap vào tài khoản. Những người không nên sử dụng mẫu sẽ ghi đè bằng mọi cách.

Điểm giao hàng của Joomla với Bootstrap 2 và không chuyển sang Bootstrap 3 là vì vậy có khung CSS/JS mở rộng chéo trên toàn bộ Joomla loạt.

1
George Wilson

Nếu bạn cần sử dụng Bootstrap 3, theo tôi, bạn nên đặt tên cho toàn bộ Bootstrap 3 CSS (như Community Builder V2), ví dụ chức năng lõi j Joomla để chỉnh sửa menu và mô-đun ở frontend bị hỏng, nếu bạn sử dụng BS3 cho frontend.

Trích dẫn từ diễn đàn Community Builder:

Liên kết gốc: http://www.joomlapolis.com/forum/6-news-and-publicity/224106-community-builder-20-b2-release?start=6

Nhưng CB2.0 sẽ sử dụng Bootstrap 2 hoặc 3?

Bootstrap 3.

Và CB sẽ luôn tải hoàn chỉnh Bootstrap thư viện, nếu chỉ là mô-đun đăng nhập trên một trang web), bởi vì Bootstrap đang tải những thứ không cần thiết rất lớn.

Không, chúng tôi không sử dụng bất kỳ Twitter nào Bootstrap JS.

Chúng tôi chỉ sử dụng CSS của nó tại thời điểm này (chúng tôi có các plugin jQuery khác tốt hơn, cung cấp chức năng JS). Chúng tôi cũng tải Twitter Bootstrap với một không gian tên để nó không thể xung đột hoặc thay đổi kiểu dáng bên ngoài không gian tên. Ngay bây giờ chúng tôi không tải nó mọi lúc. Chúng tôi chỉ tải template.css của chúng tôi và fontawgie.css mọi lúc khi mẫu CB được tải. Lưu ý các mô-đun CB không sử dụng kiểu CB. Chúng được thiết kế để khớp với Joomla 1: 1 để các mô-đun khớp chính xác với trang web của bạn.

Một giải pháp khác là sử dụng một khung như Skeleton hoặc Foundation, để tránh vấn đề trên.

0
Joomla Agency