Versi Bootstrap mana yang harus digunakan v2.3 atau v3 dalam ekstensi baru

9

Sebagai pengembang ekstensi, saya masih bingung versi Bootstrap mana yang akan digunakan dalam ekstensi saya yang akan datang.

  • Dalam banyak diskusi saya menemukan bahwa Joomla 3.x tidak akan menggunakan bootstrap-3.0.
  • Sebagian besar penyedia template menggunakan bootstrap v3
  • Banyak ekstensi juga menggunakan bootstrap v3

Apa yang harus dipilih?

Shyam
sumber

Jawaban:

6

Joomla 3.x dikirimkan bersama file-file untuk Bootstrap 2, dan karena kompatibilitas ke belakang, ini tidak akan berubah dalam seri Joomla 3.x.

Penting untuk diketahui bahwa Bootstrap terdiri dari dua area utama:

  • File CSS
  • Kerangka kerja JavaScript

CSS

Joomla memasukkan file-file tersebut sebagai file sumber KURANG dan file CSS yang dikompilasi. Joomla sendiri tidak memuat file CSS Bootstrap apa pun. Terserah template untuk memutuskan apakah ingin menggunakan file-file itu atau mengirimnya dengan file CSS sendiri.

Di backend, templat aktif biasanya adalah "Isis", yang banyak menggunakan file Bootstrap 2. Jadi masuk akal untuk menggunakan gaya Bootstrap 2 di ekstensi ekstensi Anda. Terutama karena tidak ada banyak template administrasi alternatif

Namun di frontend itu topik yang sama sekali berbeda. Anda tidak memiliki petunjuk templat apa yang akan digunakan pengguna dan kerangka mana yang akan dijadikan dasar. Secara pribadi saya memutuskan untuk menggunakan gaya Bootstrap 2 di sini juga karena satu-satunya alasan bahwa output inti juga menggunakan itu. Dengan demikian kemungkinan besar bahwa templat akan mendukung kelas-kelas tersebut. Kalau tidak, ia menyediakan penggantian untuk output. Jika menggunakan penggantian untuk inti, ekstensi Anda kemungkinan akan memerlukan penggantian juga.

Tentu saja Anda dapat menambahkan dukungan untuk Bootstrap 3, tetapi itu berarti melipatgandakan pekerjaan Anda. Namun saya tidak akan pernah hanya menyediakan layout Bootstrap 3 tanpa opsi untuk memuat Bootstrap 2.

JavaScript

Joomla memiliki metode untuk memuat kode Bootstrap JavaScript, seperti untuk tooltips atau tab. Kode ini dapat dan harus digunakan oleh ekstensi. Pastikan untuk memuatnya di tata letak Anda sehingga dapat ditimpa oleh template jika diperlukan.

Bakual
sumber
1

Seperti yang sudah Anda tunjukkan, Joomla 3.x tidak akan menggunakan Bootstrap 3.x, oleh karena itu jika Anda memutuskan untuk menggunakan Bootstrap 3, maka pengguna akan memuat 2 versi Bootstrap yang dapat menyebabkan konflik dan juga akan mengurangi kecepatan memuat halaman.

Yang bisa Anda lakukan adalah menulis skrip kecil untuk mendeteksi versi Bootstrap mana yang memberi daya pada templat dan gunakan versi itu untuk menata ekstensi Anda. Saya pikir NoNumber atau Akeeba menyediakan kemampuan untuk memilih antara versi Bootstrap yang ingin Anda gunakan. Saya tidak ingat yang mana tetapi mungkin layak untuk melihat bagaimana mereka melakukannya.

Tetapi daripada menggunakan Bootstrap untuk menata ekstensi Anda, mengapa tidak melakukan penataan khusus sebagai opsi lain? Tidak semua templat didasarkan pada Bootstrap.

Semoga ini memberi Anda sedikit wawasan.

Lodder
sumber
Masalahnya adalah kita perlu membuat ekstensi agar tidak bertentangan dengan penyedia template. Jika kami melakukan penataan khusus maka pelanggan akan mengalami masalah saat menggunakan templat yang berbeda.
Shyam
Anda mungkin sebaiknya tetap menggunakan Bootstrap 2.x. Sebagian besar templat untuk Joomla masih berbasis pada versi ini karena sudah dikemas sebelumnya dengan Joomla. Masalahnya terkadang adalah Anda tidak bisa melayani setiap orang di luar sana. Misalnya, mungkin ada beberapa penyedia templat yang menggunakan Foundation untuk memberi daya templat-templat mereka, tetapi saya tidak tahu ada pengembang yang mendukung kelas
Lodder
1

Dalam ekstensi Anda harus selalu mencari untuk menggunakan sintaks Bootstrap 2 di ekstensi Anda - terutama di backend. Ini adalah versi yang didukung secara resmi oleh Joomla core dan oleh karena itu berarti Anda akan selalu mendapatkan gaya yang berfungsi seperti yang diharapkan dan Anda tidak harus mengirimkan bootstrap dengan templat Anda. Ekstensi yang disertakan dengan Bootstrap 3 harus menyertakan ini (perhatikan kelas Akeeba Strapper yang cukup besar yang dilengkapi dengan produk Akeeba misalnya).

Penyedia templat yang menggunakan Bootstrap 3 biasanya mengizinkan sintaks bootstrap 2 dengan mengedit lebih sedikit file mereka untuk memasukkan kedua versi bootstrap ke dalam akun. Mereka yang tidak seharusnya berharap perlu menggunakan template menimpa bagaimanapun.

Inti dari pengiriman Joomla dengan Bootstrap 2 dan tidak pindah ke Bootstrap 3 adalah agar ada kerangka kerja CSS / JS lintas-ekstensi lintas seluruh seri Joomla.

George Wilson
sumber
0

Jika Anda perlu menggunakan Bootstrap 3, menurut saya Anda harus menamai seluruh Bootstrap 3 CSS (seperti Community Builder V2), mis. Fungsi inti joomla untuk mengedit menu dan modul di frontend rusak, jika Anda menggunakan BS3 untuk frontend.

Kutipan dari forum Community Builder:

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

Tetapi apakah CB2.0 akan menggunakan Bootstrap 2 atau 3?

Bootstrap 3.

Dan akankah CB selalu memuat pustaka Bootstrap yang lengkap, juga jika hanya modul masuk di situs), karena Bootstrap sedang memuat juga hal-hal besar yang tidak perlu.

Tidak, kami tidak menggunakan Twitter Bootstrap JS.

Kami hanya menggunakan CSS-nya saat ini (kami memiliki plugin jQuery lain yang lebih baik yang menyediakan fungsionalitas JS). Kami juga memuat Bootstrap Twitter dengan namespace sehingga tidak mungkin konflik atau mengubah gaya di luar namespace. Saat ini kami tidak memuatnya sepanjang waktu. Kami hanya memuat template.css dan fontawesome.css kami setiap saat ketika template CB dimuat. Catatan modul CB tidak menggunakan styling CB. Mereka dirancang agar sesuai dengan Joomla 1: 1 sehingga modul-modul tersebut sesuai dengan situs Anda.

Solusi lain adalah dengan menggunakan kerangka kerja seperti Skeleton atau Foundation, untuk menghindari masalah di atas.

Agensi Joomla
sumber