Perbandingan detail WordPress dan CMS Oktober

Nama saya Pavel Lovtsevich, saya adalah pendiri dan CTO dari studio web LOVATA. Salah satu platform utama di mana kami mengembangkan proyek untuk pelanggan kami adalah CMS Oktober, yang telah kami gunakan selama hampir 6 tahun.



CMS ini agak maju dari waktunya dan tidak segera mendapatkan popularitasnya yang memang layak. Namun, dalam beberapa tahun terakhir, telah mengalami semacam kebangkitan, sebagaimana dibuktikan oleh banyak referensi untuk itu di lingkungan pengembangan berbahasa Inggris.



Untuk mendukung gelombang ini dengan terjemahan ini, saya memulai serangkaian artikel tentang CMS yang indah ini.




Banyak orang sekarang mencari alternatif untuk WordPress. Dalam artikel ini, kami membandingkannya dengan CMS Oktober dan melihat masalah-masalah penting untuk dipertimbangkan ketika menemukan CMS yang tepat untuk proyek Anda.



Tiga bulan yang lalu (Artikel asli ditulis pada musim semi 2019. - Catatan. Terjemahan.) WordPress merilis Gutenberg untuk memperluas kemampuan pengeditan konten bawaannya. yang mendorong banyak orang tidak senang dengan perubahan ini untuk mencari CMS alternatif. Beberapa pengguna memilih untuk melakukan fork"Pre-Gutenberg" WordPress. Tapi itu tidak terlalu masuk akal, karena WordPress telah mengumpulkan hutang teknis kolosal selama 15 tahun keberadaannya. Jika saya mencari alternatif untuk WordPress, saya akan mencoba menemukan platform yang matang yang dibangun pada teknologi modern.



Pada artikel ini, kita akan membandingkan WordPress dengan CMS Oktober yang serupa tetapi lebih modern dalam banyak cara teknis dan non-teknis. Tujuannya bukan untuk meyakinkan Anda untuk menggunakan WordPress atau meningkatkan ke CMS Oktober. Saya akan mencoba menunjukkan kriteria apa yang harus dipertimbangkan ketika mengubah platform. Perbandingan yang sama dapat dan harus dibuat dengan platform lain sebelum membuat keputusan berdasarkan informasi.



Mengapa Oktober CMS



Saya belajar tentang Oktober ketika menjadi CMS flat-file terbaik tahun 2018. Setelah itu saya mulai mempelajari alat ini dan menghabiskan waktu yang cukup untuk terjun ke dalamnya baik dari sudut pandang pengguna dan pengembang. Saya segera menyadari bahwa dia adalah subjek yang sangat cocok untuk perbandingan. Saya memilihnya, dan bukan opsi alternatif seperti Grav , Statamic , ButterCMS , Joomla , Drupal , Jekyll , Hugo , dll. Dan inilah alasan utamanya:



  • Saya menemukan cara kerja CMS Oktober (bukan Grav);
  • Ini gratis dan open source (tidak seperti Statamic dan ButterCMS);
  • Pada usia lima tahun, itu dapat dianggap relatif baru (tidak seperti Joomla dan Drupal);
  • Ini berisi pembuatan konten dinamis dan berjalan di PHP (tidak seperti Jekyll dan Hugo).


Saya pikir Oktober adalah pilihan yang baik karena didasarkan pada Laravel , kerangka kerja yang digunakan untuk membangun aplikasi web modern. Selama tujuh tahun keberadaannya, telah memenangkan pengakuan pengembang, sebagaimana dibuktikan oleh komunitas dan ekosistem yang luas. Dan mengembangkan kerangka kerja ini sangat kontras dengan penulisan kode untuk WordPress. Jika dalam kasus terakhir ini terutama pemrograman prosedural, maka dalam Laravel jelas berorientasi objek.



Apa bedanya?



Di bawah, saya akan membandingkan WordPress dan Oktober di berbagai kategori dan menyoroti kelebihan dan kekurangan masing-masing. Tetapi saya tidak akan memilih pemenang, karena itu bukan tujuan artikel. Dan, dalam hal apa pun, tidak ada CMS "lebih baik" atau "terbaik". Masing-masing dari mereka memiliki kekuatan dan kelemahannya sendiri, yang membuat mereka lebih atau kurang cocok untuk tugas, proyek, perusahaan atau tim tertentu. Selain itu, dapat berguna bagi proyek untuk menggunakan beberapa CMS, misalnya menggunakan satu untuk manajemen data dan lainnya untuk merender halaman. Terserah Anda untuk memutuskan yang mana dari puluhan sistem yang paling cocok untuk tugas Anda.



Tidak ada kesimpulan pasti yang dapat ditarik dalam artikel ini, karena kami sedang mempertimbangkan salah satu dari banyak opsi di sini. Misalnya, kita juga dapat menemukan perbandingan di web seperti "WordPress versus Drupal versus Joomla," "WordPress versus Static Site Generator," atau bahkan "WordPress versus Medium". Karena tidak ada artikel ini yang memberikan gambaran lengkap, tidak ada dari perbandingan ini yang dapat dan tidak boleh dianggap final. Jadi mari kita bandingkan.



Filosofi dan Target Pemirsa



Bukan kebetulan bahwa hampir setiap situs web ketiga dibangun di WordPress . Sejak awal, itu telah berusaha untuk menjadi semudah mungkin bagi pengguna , dan itu telah dilakukan dengan baik. WordPress menghilangkan kemungkinan kerumitan penggunaan untuk semua pengguna, terlepas dari tingkat pendidikan dan latar belakang teknis mereka. Pendiri WordPress Matt Mullenweg menyatakan pendapatnya bahwa motto WordPress "Democratizing Publishing" untuk era saat ini berarti sebagai berikut:



"Orang-orang dari semua latar belakang, minat dan kemampuan harus memiliki akses ke perangkat lunak yang memungkinkan mereka untuk mengekspresikan diri mereka di web terbuka dan memiliki konten mereka."


WordPress mudah digunakan untuk semua orang, dan inklusivitasnya dikonfirmasi pada sisi pengembangan juga: tidak jarang menemukan orang tanpa pengalaman pengkodean (seperti pemasar, desainer, blogger, penjual, dll.) Yang berhasil meluncurkan situs web mereka. WordPress berpusat pada pengguna, dan kebutuhan pengguna lebih diutamakan daripada kebutuhan pengembang.



Sebaliknya, CMS Oktober lebih berorientasi pada pengembang, yang jelas dipahami sejak saat rilis :



β€œOktober CMS mengajukan hipotesis yang berani tetapi jelas: pelanggan tidak membangun situs web, pengembang melakukannya. Peran klien adalah mengelola situs dan menjelaskan persyaratan bisnisnya. Pengembang web dan industri itu sendiri berputar di sekitar memediasi faktor-faktor ini. "


Menurut pendirinya , misi CMS Oktober adalah untuk "membuktikan bahwa membangun situs web tidak terlalu sulit." CMS Oktober berbasis Laravel adalah titik awal yang baik untuk menulis kode modular yang dapat digunakan kembali. Hal ini memungkinkan Anda untuk mengembangkan aplikasi yang dirancang dengan baik yang mudah untuk disesuaikan dan dirawat dalam jangka panjang. Aplikasi semacam itu dapat didukung dan dikustomisasi sepenuhnya tanpa menggunakan workarounds ("kruk") - hanya apa yang menarik programmer serius.



CMS Oktober juga dapat memberikan pengalaman pengguna yang hebat, namun, itu tidak sesederhana dan ramah pengguna seperti WordPress. Pengguna perlu memahami bagaimana fungsi tertentu bekerja sebelum menggunakannya. Misalnya, untuk mengetahui cara menyematkan formulir melalui plugin, Anda harus membaca tutorial panjang, yang lebih rumit daripada fungsionalitas drag-and-drop intuitif yang ditemukan di beberapa plugin form WordPress.



Instalasi



WordPress dapat diinstal dalam lima menit , meskipun banyak orang mencatat bahwa dengan semua plugin diperhitungkan, biasanya membutuhkan waktu 15 menit atau lebih . Selain itu, WordPress menawarkan fitur Multisite , yang memungkinkan Anda membuat jaringan beberapa situs virtual dalam satu instalasi. Fitur ini memungkinkan agensi untuk dengan mudah mengelola situs banyak klien .



Menginstal CMS Oktober juga sangat sederhana: instalasi Wizard itu sendiri membutuhkan waktu bahkan kurang dari lima menit, dan jika Anda menginstalnya melalui instalasi konsol , maka bahkan lebih cepat. Yang terakhir dapat dilakukan dengan hanya menavigasi ke direktori target dan kemudian menjalankan perintah



curl -s https://octobercms.com/api/installer | php 


Setelah itu, Anda perlu memasukkan konfigurasi basis data, jika tidak, berperilaku seperti CMS flat-file. Setelah instalasi selesai, kami akan memiliki situs web yang berfungsi penuh, tetapi cukup sederhana untuk saat ini. Jika Anda menambahkan waktu untuk menginstal dan mengonfigurasi plugin yang diperlukan, Anda dapat berharap untuk mengambil setidaknya 15 menit.



gambar



Keamanan



Tidak semua orang menganggap WordPress aman karena sejumlah besar kerentanan yang terus-menerus ditemukan. Ini memaksa pengguna untuk terus-menerus memperbarui CMS itu sendiri dan semua plugin yang diinstal untuk menghindari risiko keamanan. Di antara masalah utama adalah dukungan untuk versi PHP yang lebih lama, yang tidak lagi didukung oleh komunitas pengembang PHP (WordPress sekarang mendukung PHP 5.2.4, sedangkan versi PHP yang didukung penuh terbaru adalah 5.6). Masalah ini harus dipecahkan pada bulan April 2019, ketika WordPress secara resmi mulai mendukung PHP versi 5.6 dan lebih tinggi (Masalahnya sudah dipecahkan. - Approx. Transfer) .



Selain itu, ancaman terhadap keamanan WordPress tidak terlalu banyak pada masalah internalnya, tetapi karena popularitasnya yang tinggi, yang membuat sistem ini menjadi target peretas. Namun, ini juga bekerja berlawanan arah: penyebaran WordPress yang luas berarti bahwa tim keamanannya harus menangani pekerjaannya dengan serius, terus mencari dan memperbaiki kerentanan, jika tidak, hingga sepertiga situs web di Internet berisiko. Taruhannya terlalu tinggi.



CMS Oktober, sebaliknya, tidak memiliki masalah keamanan reputasi. Namun, karena hanya 27.000 situs aktif dibuat pada bulan Oktober(bandingkan dengan jutaan di WordPress), kami tidak dapat menilai kedua sistem secara sama. Namun, tim pengembangan CMS Oktober menganggap serius keamanan. Ini dibuktikan dengan nilai permintaan instalasi Wizard untuk memasukkan URL backend CMS, yang diatur ke / backend secara default, tetapi dapat diubah ke hal lain untuk mempersulit peretas untuk menavigasi situs. Mengubah WordPress login dan backend URL masing-masing dengan /wp-login.php dan / wp-admin, hanya dimungkinkan melalui plugin . Selain itu, CMS Oktober dapat berfungsi sebagai CMS flat-file (mis. Tanpa database) dan menghindari kerentanan basis data seperti injeksi SQL.



Tumpukan teknologi



Baik WordPress dan CMS Oktober berjalan pada tumpukan LAMP tradisional: Linux, Apache, MySQL, dan PHP. Namun, hanya PHP yang diperlukan: Anda juga dapat menggunakan Windows, Nginx, MariaDB, dll. Oktober CMS dapat berperilaku seperti CMS flat-file, yaitu dapat dilakukan tanpa database, meskipun dengan mengorbankan fungsionalitas (misalnya, posting blog hilang) . Satu-satunya hal yang tetap dijamin adalah fungsionalitas halaman, yang dianggap sebagai dasar untuk membuat dan menerbitkan konten dan digunakan sebagai fungsi utama.



Adapun tumpukan bahasa, situs web yang dibuat menggunakan WordPress dan CMS Oktober didasarkan pada HTML, CSS, dan JavaScript (perhatikan bahwa PHP digunakan untuk menghasilkan HTML). CMS Oktober juga memudahkan penggunaan file KURANG dan SASS .



Paradigma pemrograman



WordPress menggunakan prinsip pemrograman fungsional berdasarkan komputasi dengan memanggil fungsi yang tidak memiliki status aplikasi. Sementara pengembang WordPress tidak harus tetap berpegang pada pemrograman fungsional (misalnya, untuk mengkodekan tema dan plugin mereka), paradigma ini telah diambil alih oleh kode sistem utama untuk mempertahankan kompatibilitas dengan versi sebelumnya selama 15 tahun. Ini telah menjadi salah satu pilar kesuksesan WordPress, tetapi itu mengarah pada penumpukan hutang teknis .



CMS Oktober, di sisi lain, menggunakan paradigma pemrograman imperatifberdasarkan perhitungan dengan memanipulasi keadaan objek. CMS Oktober didasarkan pada Laravel, sebuah kerangka kerja yang dibangun sepenuhnya berdasarkan prinsip-prinsip pemrograman berorientasi objek . Prinsip-prinsip ini memungkinkan Anda untuk membuat aplikasi modular berdasarkan konsep Model-View-Controller untuk memisahkan antarmuka pengguna dari data aplikasi, Injeksi Ketergantungan untuk mengatur dependensi kelas , dan juga memisahkan antarmuka untuk menentukan layanan inti yang disediakan oleh kerangka kerja.



Kait



Pemrograman di WordPress dapat digambarkan sebagai "pengembangan Hook". Hook adalah mekanisme yang memungkinkan Anda untuk mengubah perilaku atau nilai default dan memungkinkan kode lain untuk melakukan fungsi yang sesuai. Kait dipicu melalui "tindakan" yang memungkinkan Anda melakukan fungsi tambahan, dan "filter" yang memungkinkan Anda mengubah nilai.



Pengait yang tersebar luas di basis kode WordPress adalah salah satu aspek favorit saya dari pemrograman WordPress. Mereka memungkinkan plugin untuk berinteraksi satu sama lain, inti atau tema, memberikan dukungan dasar untuk pemrograman berorientasi aspek .



Berita baiknya adalah bahwa Laravel (dan karenanya CMS Oktober) juga mendukung konsep kait yang disebut"Acara . " Mereka memberikan implementasi sederhana dari konsep pengamat, memungkinkan kode Anda untuk berlangganan dan mendengarkan peristiwa yang terjadi dalam aplikasi Anda untuk bereaksi sesuai kebutuhan. Acara memungkinkan Anda untuk memecah fungsionalitas kompleks menjadi komponen yang dapat Anda instal secara independen. Dengan melakukan itu, mereka akan berinteraksi satu sama lain, yang memungkinkan Anda membuat aplikasi modular.



Ketergantungan pada perpustakaan JavaScript



Versi terbaru WordPress secara default mencakup Gutenberg berbasis React.js untuk membuat konten. Akibatnya, pengembangan WordPress sekarang sebagian besar berbasis JavaScript (terutama melalui React ). Meskipun dimungkinkan untuk menggunakan kerangka kerja dan perpustakaan lain, sebagaimana dibuktikan oleh Blok Elemen untuk Gutenberg, berdasarkan Marionette .



Selain itu, WordPress masih berbasis pada Backbone.js (untuk Media Manager) dan jQuery (kode warisan), namun ketergantungan pada pustaka-pustaka ini diharapkan akan menghilang karena Gutenberg menjadi default baru.



CMS Oktober tergantung pada jQuery, yang digunakannya untuk mengimplementasikan opsional-nyaAJAX - gambar untuk memuat data dari server tanpa menyegarkan halaman browser.



Halaman, tema, plugin



Baik WordPress dan CMS Oktober melihat halaman sebagai unit dasar untuk membuat dan menerbitkan konten (dalam kasus WordPress, selain posting). Keduanya mendukung perubahan tampilan situs Anda menggunakan tema dan memungkinkan Anda untuk menginstal dan memperluas fungsionalitas menggunakan plugin.



Meskipun konsepnya sama di kedua CMS, ada beberapa perbedaan dalam implementasi. Akibatnya, mereka berperilaku sedikit berbeda.



Di WordPress, halaman didefinisikan sebagai konten dan disimpan dalam database. Oleh karena itu, konten halaman hanya dapat dibuat melalui CMS (misalnya, di panel admin) dan beralih dari satu topik ke yang lain tidak membuat halaman yang ada tidak dapat diakses. Berkat ini, seluruh proses cukup lancar.



Sebaliknya, halaman CMS Oktober adalah file statis yang disimpan dalam direktori tema. Keuntungan dari solusi arsitektur ini adalah bahwa konten halaman dapat dibuat dari aplikasi eksternal, seperti editor teks seperti Sublime atau Visual Studio Code . Di sisi lain, ketika beralih dari satu tema ke yang lain, Anda perlu membuat ulang secara manual atau menyalin halaman dari yang sekarang ke tema yang baru, jika tidak mereka akan hilang.



Penting untuk dicatat bahwa CMS Oktober memungkinkan perutean halaman.. Oleh karena itu, halaman digunakan tidak hanya sebagai wadah untuk konten, tetapi juga untuk fungsionalitas. Sebagai contoh, plugin blog tergantung pada halaman untuk menampilkan daftar posting blog di URL yang dipilih, halaman lain untuk menampilkan posting blog di URL yang dipilih lainnya, dan sebagainya. Jika ada dari halaman-halaman ini yang hilang, fungsionalitas terkait dari plugin akan menjadi tidak tersedia dan URL ini akan memberikan kesalahan 404. Oleh karena itu, pada bulan Oktober CMS tema dan plugin CMS tidak sepenuhnya terpisah dan Anda perlu mengganti tema dengan hati-hati.



gambar



Fungsi dan plugin di luar kotak



WordPress menawarkan fungsionalitas dasar minimal yang dapat ditambah dengan plugin . Itu mematuhi aturan 80-20 untuk memutuskan apakah akan memasukkan fungsionalitas tertentu dalam intinya atau tidak.



Jika mereka memberi manfaat bagi 80% pengguna, maka mereka dimasukkan, jika tidak mereka diimplementasikan melalui plugin. Saat memasang plugin di situs, mereka dapat menyebabkan kode gembungjika terlalu banyak yang diinstal. Plugin juga dapat bekerja dengan buruk satu sama lain, mengeksekusi kode yang sama, atau memuat sumber daya yang serupa, menghasilkan kinerja yang kurang optimal. Oleh karena itu, ketika meluncurkan situs WordPress relatif mudah, mempertahankannya dan menjaganya dalam keadaan optimal dan berkinerja ketika fitur baru ditambahkan lebih merupakan tantangan.



gambar



CMS Oktober juga mencoba menawarkan fungsionalitas inti minimal. Bahkan terlalu banyak: satu-satunya fungsi yang dijamin adalah pembuatan dan publikasi halaman. Untuk yang lainnya, kita perlu menginstal salah satu plugin. Dengan kata lain, ada semua yang Anda butuhkan, dan tidak lebih.



Tujuannya jelas: sebagian besar situs sederhana hanya terdiri dari halaman, bahkan mungkin tanpa posting blog, pengguna, atau login. Mengapa aplikasi memuat sumber daya untuk mereka jika mereka tidak diperlukan? Akibatnya, fungsi untuk blogging , manajemen pengguna , terjemahan dan beberapa fungsi lainnya tersedia melalui pasar resmi .



gambar



CMS Oktober juga mencakup beberapa fitur yang (meskipun tidak selalu diperlukan) dapat sangat meningkatkan aplikasi. Misalnya, ia menyediakan dukungan bawaan untuk mengunggah file media ke Amazon S3 dan mengaksesnya melalui CDN Rackspace. Ia juga memiliki Media Manager, yang terutama digunakan melalui plugin, misalnya, untuk menambahkan gambar ke blog. Halaman juga dapat menggunakan Media Manager untuk menanamkan file media, namun CMS dilengkapi dengan bagian Aset untuk memuat file media untuk mereka, yang tampaknya lebih nyaman.



Sepertinya saya bahwa CMS Oktober memungkinkan Anda membuat aplikasi yang paling sederhana, terutama untuk situs sederhana. Tetapi bisa ada konsekuensi yang tidak menyenangkan. Ini dapat menyebabkan kode mengasapi, karena garis antara apa yang dibutuhkan dan yang tidak sangat tipis dan sulit untuk ditentukan sebelumnya dalam CMS.



Ini mudah dirasakan jika kita melihat konsep "pengguna": di WordPress, pengguna dan administrator situs milik entitas pengguna yang sama (dan kita dapat menjadikan pengguna sebagai administrator melalui peran dan hak istimewa). Pada bulan Oktober CMS, kedua konsep ini diimplementasikan secara terpisah: di luar kotak, fungsi administrator tersedia, yang dapat masuk ke panel admin dan mengubah pengaturan, sementara pengguna terdaftar diimplementasikan melalui plugin terpisah. Kedua tipe pengguna ini memiliki proses login yang berbeda dan tabel database yang berbeda untuk menyimpan data. Dengan demikian, prinsip KERING (jangan ulangi diri Anda sendiri) dapat dilanggar.



Masalah ini muncul tidak hanya sehubungan dengan perilaku entitas, tetapi juga bidang data apa yang harus dikandungnya. Misalnya, haruskah bidang data pengguna di situs ditentukan sebelumnya? Apakah bidang dengan nomor telepon diperlukan? Dan bidang URL Instagram, mengingat Instagram baru-baru ini menjadi sangat populer? Jika kita membuat situs web profesional, bukankah sebaiknya kita menggunakan kotak LinkedIn alih-alih Instagram? Keputusan ini secara unik tergantung pada situasi dan tidak dapat diambil oleh CMS atau plugin.



Plugin CMS Oktober bernama Pengguna mengimplementasikan sistem pengguna, tetapi tanpa kehadiran bidang khusus. Dan plugin User Plus menambahkan beberapa bidang khusus tambahan. Jika tidak cukup - ada plugin User Plus + yang menambahkan lebih banyak bidang khusus. Kapan waktunya berhenti?(Kami di LOVATA mengembangkan plugin Buddies kami sendiri yang menyelesaikan masalah ini dan memungkinkan Anda untuk membuat sejumlah bidang kustom apa pun. - Catatan terjemahan.)



Masalah lain - jika tidak ada tempat untuk menambahkan fitur baru ke entitas, ini mengarah ke penciptaan objek lain yang sangat mirip , hanya untuk mendukung kemampuan yang dibutuhkan. Misalnya, dalam CMS Oktober, secara default ada fungsi pembuatan halaman, dan Anda juga dapat membuat halaman statis melalui plugin. Esensinya sama: halaman dan halaman statis disimpan sebagai file statis. Satu-satunya hal yang membuatnya berbeda (sejauh yang saya mengerti) adalah bahwa halaman statis diedit dengan editor visual, bukan editor HTML dan dapat ditambahkan ke menu. Sepertinya saya bahwa hanya perbedaan struktural seperti menyimpan satu objek sebagai file statis dan lainnya dalam database dapat menjelaskan pembuatan objek tambahan untuk halaman (untuk ini ada permintaan tarik ), tetapi untuk fungsi sederhana yang sekarang, ini mengarah ke kembung. kode.



Dengan demikian, CMS Oktober memungkinkan Anda membuat aplikasi web dengan cara yang sangat ramping dan efisien, misalnya dengan menjatuhkan basis data ketika Anda tidak membutuhkannya. Tetapi aplikasi ini juga dapat menjadi terlalu membengkak, karena pengembang dipaksa untuk mengimplementasikan beberapa solusi untuk objek serupa, yang dapat mempersulit penggunaan ("Apakah saya perlu menggunakan halaman atau halaman statis?").



Karena baik WordPress maupun CMS Oktober tidak menemukan solusi sempurna untuk menghindari mengasapi, arsitektur aplikasi apa pun harus dirancang dengan cermat untuk menghindari masalah di masa depan.



Pembuatan Konten



Gutenberg membawa dua inovasi ke WordPress: menggunakan komponen sebagai entitas untuk membangun situs web, yang menawarkan beberapa keunggulan dibandingkan pengkodean gumpalan HTML, dan memperkenalkan entitas baru yang disebut "blok", yang setelah selesainya Gutenberg Tahap 2 pada 2019 (Sudah dilaksanakan. - Perkiraan. Terjemahan.) . Ini akan menawarkan cara terpadu untuk memasukkan konten di situs, yang akan menyederhanakan pengalaman pengguna dibandingkan dengan proses kacau menambahkan konten menggunakan shortcode, TinyMCE, menu, widget, dan sebagainya.



gambar



Karena blok Gutenberg dapat menghasilkan dan menyimpan HTML statis sebagai bagian dari posting blog, memasang beberapa blok Gutenberg tidak serta merta mengakibatkan kode sisi pengguna menggembung di situs. Mungkin terbatas pada ketidaknyamanan di sisi administrator. Oleh karena itu, Gutenberg dapat dianggap sebagai pendekatan yang baik untuk membuat situs secara modular dengan antarmuka pengguna yang sederhana namun kuat untuk membuat konten. Mungkin kelemahan terbesar adalah kebutuhan untuk belajar Bereaksi, yang tidak terlalu sederhana .



Jika unit utama pembuatan konten di WordPress adalah komponen Bereaksi, maka CMS Oktober didasarkan pada gagasan bahwa HTML lama yang baik sudah cukup untuk membuat situs web. Memang, saat membuat halaman, kami bekerja dengan editor HTML biasa (Markup).



gambar



Jika halaman itu murni HTML statis, tidak perlu ada CMS. Tetapi halaman dalam CMS Oktober ditulis menggunakan templat Twig yang dikompilasi menjadi kode PHP sederhana dan optimal. Mereka dapat didasarkan pada tata letak (layout), yang berisi elemen berulang seperti header dan footer, dapat menyebabkan placeholder (placeholder), yang didefinisikan dalam tata letak untuk memungkinkan pengaturan konten pada halaman, dan mungkin juga termasuk parsely (sebagian), yang entitas adalah potongan kode yang dapat digunakan kembali.



Selain itu, halaman dapat berisi blok konten(konten), yaitu file Teks, HTML, atau Markdown yang dapat diedit secara terpisah. Mereka juga dapat berisi komponen , yang fungsionalitasnya diimplementasikan menggunakan plugin. Dan akhirnya, jika HTML tidak cukup dan kami perlu membuat kode dinamis, Anda dapat menambahkan fungsi PHP .



Seluruh editor adalah HTML. Tidak ada bidang teks dengan TinyMCE untuk pengeditan visual konten - setidaknya tidak melalui antarmuka default (fungsi ini telah diserahkan kepada plugin). Karena itu, kami dapat mengatakan bahwa Anda harus mengetahui HTML untuk menggunakan CMS Oktober. Selain itu, beberapa opsi pembuatan konten yang berbeda (halaman, tata letak, placeholder, parsel, blok konten, komponen, dan fungsi PHP) dapat menjadi sangat efektif, tetapi tidak semudah bekerja seperti melalui antarmuka blok WordPress terpadu. Hal-hal dapat menjadi lebih rumit karena Anda dapat menambahkan elemen lain, seperti halaman statis dan menu atau snippet... Dan beberapa di antaranya, seperti halaman dan halaman statis, tampaknya memiliki fungsi yang sama, sehingga sulit untuk memilih apa yang akan digunakan dan kapan.



Saya pikir hampir semua orang dapat mengelola situs WordPress. Tapi CMS Oktober lebih nyaman untuk pengembang daripada untuk pengguna tanpa latar belakang teknis. Oleh karena itu, pemrogram mungkin menyukainya, tetapi orang-orang dari bidang lain mungkin tidak menemukan antarmuka yang intuitif.



Manajer media



Baik WordPress dan CMS Oktober memiliki manajer media yang memungkinkan Anda untuk dengan mudah menambahkan file multimedia ke situs, mendukung menambahkan beberapa file sekaligus dengan drag dan drop, dan menampilkan gambar di area konten. Mereka terlihat dan berperilaku hampir sama: satu-satunya perbedaan jelas yang saya perhatikan adalah bahwa Media Manager untuk WordPress memungkinkan Anda untuk menanamkan galeri gambar, sedangkan Media Manager untuk CMS Oktober memungkinkan Anda untuk secara manual membuat struktur folder yang menampung file yang diunggah.



gambar



Tetapi sejak munculnya Gutenberg, media WordPress telah berkembang secara signifikan: Anda sekarang dapat menanamkan video, gambar, dan galeri foto, tidak seperti editor TinyMCE, yang hanya menawarkan versi yang tidak akurat tentang bagaimana tampilannya di situs. Mereka juga menambahkan fungsi menarik, tetapi mudah digunakan yang diperlihatkan dalam video ini .



Penginternasionalan



Inti WordPress menggunakan gettext untuk mengaktifkan terjemahan tema dan plugin . Dimulai dengan file .pot yang berisi semua string untuk diterjemahkan, kita perlu membuat file .po yang berisi terjemahannya ke dalam bahasa yang sesuai. File ini kemudian dikompilasi menjadi file .mo biner, cocok untuk mengekstraksi terjemahan dengan cepat. Alat untuk tugas-tugas ini termasuk GlotPress (online) dan Poedit (aplikasi yang dapat diunduh). Dengan mudah, mekanisme ini juga berfungsi di lokalisasi sisi klien untuk Gutenberg.



gambar



WordPress saat ini tidak memiliki solusi inti tunggal untuk menerjemahkan konten dan tidak akan menawarkannya hingga Fase 4 Gutenberg(dijadwalkan untuk 2020 atau lebih baru). Untuk saat ini, fungsi ini akan disediakan oleh plugin yang menawarkan strategi berbeda untuk menyimpan dan mengelola konten yang diterjemahkan. Misalnya, plugin seperti Polylang dan WPML menyimpan setiap terjemahan pada baris terpisah dari tabel basis data pengguna. Ini nyaman karena konten tidak tercampur, tetapi bekerja lebih lambat, karena memerlukan penggabungan internal tambahan dari dua tabel ketika menanyakan database. Plugin qTranslate X menyimpan semua terjemahan dalam satu bidang dari tabel database asli. Dengan cara ini data diminta lebih cepat, tetapi karena pencampuran konten, situs dapat rusak jika Anda menonaktifkan plugin. Tetap bagi kita untuk memilih strategi yang paling memenuhi kebutuhan kita.



CMS Oktober mendukung multibahasa bukan melalui inti, tetapi melalui plugin yang dibuat oleh tim in-house . Plugin ini menjamin integrasi bebas kesalahan ke dalam sistem. Dari sudut pandang fungsional, ia melakukan tugasnya, tetapi dari sudut pandang pengembangan, plugin tidak cukup sempurna.



Di WordPress, sebuah halaman hanyalah sebuah posting dengan tipe posting "halaman", dan ada mekanisme terjemahan tunggal untuk mereka. CMS Oktober memiliki objek "halaman", "halaman statis" dan "posting blog". Meskipun sangat mirip, mereka membutuhkan tiga terjemahan berbeda! Konten β€œhalaman” dapat menyertakan kode pesan (misalnya, kode bernama nav.content, header.title, dll.), Yang masing-masing berisi terjemahannya sendiri untuk semua lokal sebagai objek JSON berseri dalam tabel database rainlab_translate_messages.



Konten halaman statis dihasilkan dalam file statis baru untuk setiap lokal, meskipun semua URL yang diterjemahkan untuk semua lokal tidak disimpan dalam file yang sesuai, tetapi dalam file bahasa default.



Konten posting blog disimpan sebagai objek JSON serial dengan satu baris per lokal di tabel database rainlab_translate_attributes, dan URL yang diterjemahkan disimpan dengan satu baris per lokal di tabel database rainlab_translate_indexes.



Saya tidak tahu apakah kompleksitas ini terkait dengan bagaimana plug-in diterapkan, atau arsitektur CMS Oktober. Bagaimanapun, ini adalah contoh lain dari mengasapi kode yang tidak diinginkan selama pengembangan.



Manajemen Plugin



Baik WordPress dan CMS Oktober menawarkan manajer plugin canggih yang memungkinkan Anda untuk menemukan, menginstal plugin baru, dan memperbarui plugin yang sebelumnya diinstal ke versi terbaru - semua melalui backend.



gambar



Manajemen ketergantungan



Oktober CMS menggunakan Composer sebagai manajer paketnya, memungkinkan plugin untuk mengunduh dan menginstal dependensi mereka saat instalasi, sehingga memastikan pengembangan yang tidak menyakitkan.



WordPress, sebaliknya, belum secara resmi menerapkan Komposer (seperti pengelola dependensi PHP lainnya) karena tidak ada kesepakatan apakah situs WordPress itu atau ketergantungan . Oleh karena itu, jika mereka membutuhkan Komposer untuk proyek, pengembang perlu menambahkannya sendiri .



Dengan beralih ke Gutenberg, NPM telah menjadi pengelola ketergantungan JavaScript yang disukai, alat pengembang populer bergantung padanya , dan pustaka klien terus-menerus dirilis sebagai paket mandiridalam registri NPM .



Interaksi Basis Data



WordPress menawarkan fungsi untuk mengambil data dari database (seperti get_posts) dan menyimpannya (seperti wp_insert_post dan wp_update_post). Saat mengambil data, kita dapat mengirimkan parameter untuk memfilter, membatasi, dan mengatur hasil untuk menunjukkan apakah hasilnya harus dilewatkan sebagai instance dari kelas atau sebagai array properti, dll. Ketika fungsi tidak sepenuhnya memenuhi persyaratan kami (misalnya, ketika kita perlu menjalankan INNER BERGABUNG dengan tabel pengguna), kita dapat melakukan query database secara langsung melalui variabel global $ wpdb. Saat membuat plugin dengan tipe posting khusus, kode kemungkinan besar akan menjalankan query SQL kustom untuk mengambil dan / atau menyimpan data dalam tabel kustom.Dengan demikian, WordPress mencoba menyediakan akses ke database melalui fungsi-fungsi umum pada fase pertama dan akses basis data tingkat rendah di fase kedua.



Pada bulan Oktober CMS menggunakan pendekatan yang berbeda: alih-alih menyambungkan langsung ke aplikasi basis data, gunakan Eloquent ORM oleh Laravel untuk mengakses data dalam basis data, dan memanipulasi mereka menggunakan instance kelas (Model). Berkat ini, interaksi dengan database juga harus didasarkan pada prinsip-prinsip pemrograman berorientasi objek. Ini adalah akses tingkat tinggi; plugin dapat mengambil dan / atau menyimpan data tanpa menulis string SQL, cukup dengan mengikuti aturan untuk membuat tabel dan membangun hubungan antar objek . Misalnya, kode di bawah ini mengambil objek dari database melalui model Penerbangan, mengubah properti, dan menyimpannya lagi.



$flight = Flight::find(1);
$flight->name = 'Darwin to Adelaide';
$flight->save();




Pembaruan Model Data



Alasan lain kesuksesan WordPress (selain tidak melanggar kompatibilitas ke belakang) adalah arsitektur databasenya.... Itu dirancang untuk memungkinkan aplikasi tumbuh dari waktu ke waktu. Tujuan ini dicapai dengan menggunakan properti-meta, yaitu properti yang dapat ditambahkan secara bebas ke objek basis data kapan saja. Properti ini tidak disimpan dalam kolom tabel objek yang sesuai (wp_posts, wp_users, wp_comments, atau wp_terms), tetapi sebagai baris dalam tabel meta yang sesuai (wp_postmeta, wp_usermeta, wp_commentmeta, atau wp_termmeta) dan diambil menggunakan INNER JOIN. Oleh karena itu, meskipun meta-nilai ini diambil lebih lambat, mereka memberikan fleksibilitas. Artinya, model data aplikasi jarang perlu membangun kembali arsitektur dari awal untuk mengimplementasikan beberapa fungsi baru.



gambar



CMS Oktober tidak menggunakan meta-properties, tetapi dapat menyimpan beberapa nilai arbitrer. Mereka tidak muncul secara langsung sebagai kolom dalam tabel database, seperti objek JSON berseri . Jika tidak, ketika objek membutuhkan beberapa properti baru, kita perlu menambahkan kolom baru ke tabel yang sesuai (ini menggunakan plugin User Plus dan User Plus + yang disebutkan sebelumnya). Untuk memperbarui skema database aplikasi, CMS Oktober bergantung pada migrasi Laravel, yang merupakan kumpulan instruksi untuk mengeksekusi skema (seperti menambah atau menghapus kolom, mengganti nama indeks, dll.). Mereka dieksekusi ketika perangkat lunak diperbarui, misalnya ketika versi baru plugin diinstal.



Fitur tanpa kepala



Baik WordPress dan CMS Oktober dapat digunakan secara mandiri. Artinya, kami dapat mempertimbangkan CMS sebagai sistem manajemen konten yang membuat konten dapat diakses melalui API, memungkinkan Anda untuk menampilkan situs web di sisi klien dan dapat mendukung aplikasi lain, misalnya, seluler. Memang, WordPress telah terus bergerak menuju tanpa kepala karena editor konten Gutenberg sendiri memandang WordPress sebagai CMS tanpa kepala. Akibatnya, Gutenberg juga dapat bekerja dengan CMS lain, seperti yang dapat dilihat pada contoh Drupal Gutenberg (Sudah ada implementasi Gutenberg untuk CMS Oktober . - Catatan terjemahan.) .



Sistem tanpa kepala perlu mengimplementasikan beberapa jenis API untuk mengembalikan data, misalnya, REST atau GraphQL. WordPress mendukung REST melalui WP REST API , menyediakan titik akhir di sepanjang rute yang telah ditentukan / wp-json / wp / v2 / ...; CMS Oktober mendukung REST melalui plugin RESTful dan API Generator , yang memungkinkan Anda untuk membuat titik akhir khusus dan, sebagai hasilnya, mendukung kontrol versi sebagai bagian dari url titik akhir dan dapat memberikan perlindungan yang lebih baik terhadap bot. WordPress juga mendukung GraphQL melalui WPGraphQL , tetapi Oktober CMS tidak memiliki implementasinya.



Yang penting, sistem tanpa kepala harus menawarkan kemampuan manajemen konten yang efektif. Seperti yang telah kami sebutkan, WordPress memiliki arsitektur basis data yang kuat yang menawarkan banyak objek data (pengguna, posting dan posting pengguna, halaman, kategori, tag, dan taksonomi khusus, komentar). Mereka dapat digunakan untuk memodelkan aplikasi dengan baik, meta-properti untuk memperluas objek data ini (yang memungkinkan aplikasi untuk memperbarui model datanya sesuai dan tanpa perubahan signifikan), dan juga menggunakan plugin Bidang Kustom Lanjutan untuk mengisi kesenjangan dalam membangun hubungan antara objek data. Selain itu, plugin VersionPress memungkinkan Anda untuk mengontrol versi konten basis data menggunakan Git. Yaitu, WordPressbagus untuk manajemen konten.



CMS Oktober dapat mengecualikan database dan bertindak seperti sistem file datar, atau memiliki database dan bertindak seperti hibrida, menyimpan konten halaman sebagai file statis dan posting blog dalam database. Oleh karena itu, konten tidak terpusat dan memerlukan pendekatan yang berbeda untuk mengelolanya. Sebagai contoh, meskipun kita bisa menggunakan Git untuk mengontrol versi halaman, tidak ada dukungan kontrol versi di database per se. Solusi untuk masalah ini adalah mengisi data dalam database melalui seederyang, sebagai kode, dapat diversi dan dieksekusi selama penyebaran. Selain itu, CMS Oktober tidak menawarkan model database bawaan dengan objek data yang telah ditentukan yang dapat memenuhi kebutuhan sebagian besar aplikasi. Oleh karena itu, untuk mengimplementasikan model datanya , aplikasi kemungkinan besar akan membutuhkan pengembangan individu, dan ini lebih banyak pekerjaan. Di sisi lain, ini bisa lebih efisien (misalnya, mengakses properti dari kolom lebih cepat daripada dari baris di tabel lain menggunakan INNER JOIN di properti meta WordPress).



Dukungan CLI



Baik WordPress dan CMS Oktober dapat berinteraksi dengan melalui konsol menggunakan Command Line Interface (CLI): di WordPress, ini dilakukan melalui WP-CLI , dan pada Oktober CMS melalui Artisan dari Laravel. Selain perintah Laravel, CMS Oktober mengimplementasikan beberapa perintah asli untuk pembaruan sistem, migrasi basis data, dll. Alat-alat ini membuatnya sangat nyaman untuk mengakses situs di luar browser, misalnya, untuk pengujian.



Hosting



Menemukan penyedia hosting untuk situs WordPress Anda tidak masalah. Mengingat pangsa pasar WordPress, ada lusinan atau bahkan ratusan vendor yang saling bersaing, ini adalah pasar yang sangat dinamis. Satu-satunya masalah adalah menemukan penyedia yang paling cocok untuk situs tertentu berdasarkan pada semua penawaran. Bagaimanapun, mereka dapat bervariasi dalam harga, kualitas, jenis, bandwidth dan volume penyimpanan, dukungan pelanggan, lokasi, frekuensi pembaruan peralatan dan kriteria lain yang dengannya kita dapat menavigasi terutama melalui ulasan yang membandingkannya.



Terlepas dari kenyataan bahwa tidak banyak dari mereka untuk CMS Oktober, ada sejumlah penyedia hosting yang menawarkan layanan mereka, sehingga Anda dapat membandingkan mereka dan memilih yang tepat. Banyak dari mereka adalah mitra CMS Oktober, yang lain mudah ditemukan di mesin pencari , tetapi karena saya belum menemukan satu pun ulasan independen atau artikel perbandingan, memilih yang paling cocok akan sedikit lebih sulit.



Pasar, ekosistem, dan nilai



Ekosistem komersial WordPress bernilai $ 10 miliar per tahun . Ini membuktikan banyaknya orang dan perusahaan yang mampu menghasilkan uang dengan menawarkan produk dan layanan WordPress seperti pengembangan situs web, hosting, pengembangan tema dan plugin , dukungan, keamanan, dan lainnya. Memang, itu sangat besar sehingga bahkan sedikit membengkak, dalam arti bahwa sangat sering Anda dapat menemukan plugin berbeda yang memecahkan masalah yang sama, plugin yang tidak berfungsi atau belum diperbarui selama bertahun-tahun, dan tema yang mirip satu sama lain.



Namun, ketika membangun situs baru, ukuran dan keragaman ekosistem juga berarti bahwa kita lebih mungkin menemukan setidaknya satu plugin yang mengimplementasikan masing-masing fungsi yang diperlukan, memungkinkan kita menghemat uang tanpa harus mengembangkan fungsionalitas sendiri. Kehadiran tema yang dapat disesuaikan memungkinkan Anda membuat situs web dengan desain yang cukup unik dengan sedikit usaha. Sebagai hasilnya, Anda dapat dengan mudah membuat dan menjalankan situs WordPress dengan harga kurang dari $ 100, yang menjadikan CMS ini opsi yang tepat untuk proyek-proyek dengan anggaran berapa pun.



Menjadi relatif baru, dia baru berusia lima tahun ( sudah enam. - Approx. Translate.), OctoberCMS tentu saja tertinggal dari WordPress dalam hal ukuran ekosistem dan pasar, tetapi terus berkembang. Saat ini, pasarnya menampilkan lebih dari 600 plugin dan beberapa tema (Per Juni 2020, lebih dari 900 plugin dan sekitar 200 tema telah diterbitkan. - Approx. Translate.) . Dalam hal plugin, tim CMS Oktober meminta komunitas untuk membuat upaya untuk membuat plugin asli yang menawarkan fungsionalitas yang belum disediakan oleh yang lain.



Oleh karena itu, walaupun 600+ plugin tidak terlalu banyak, mereka setidaknya menawarkan 600+ fungsi yang berbeda. Artinya, meskipun tidak ada cara untuk memilih antara beberapa pemasok, kita dapat berharap bahwa kebutuhan dasar khas situs web, seperti blogging, komentar, forum, integrasi media sosial, e-commerce, dan lainnya, akan ditutup. Selain itu, karena pendiri CMS Oktober secara pribadi meninjau semua plugin yang dikirimkan dan mengevaluasinya sesuai dengan pedoman kualitas , kami dapat mengharapkan plugin ini berfungsi sebagaimana diharapkan.



Kelebihan lainnya adalah bahwa plugin Oktober dapat menyertakan elemen dari paket Laravel (walaupun tidak semuanya kompatibel dengan Oktober)setidaknya tidak ada peretasan). Tetapi ada beberapa proposal tentang topik, yaitu, kita kemungkinan besar harus mengembangkan tema kita sendiri, mempekerjakan pengembang untuk tugas ini. Tema CMS Oktober kemungkinan merupakan pengembangan khusus karena tema dan plugin tidak sepenuhnya terpisah, membuat pasar untuk tema yang mudah diganti lebih sulit untuk dibuat. Tetapi ini adalah masalah sementara: setelah rilis fitur ini, halaman - halaman tersebut dapat disimpan dalam basis data dan pertukaran tema tidak boleh merusak fungsionalitas.



Menurut pendapat saya, karena lebih sedikit tema dan plugin, membuat situs sederhana di OctoberCMS akan lebih mahal daripada membuat situs serupa di WordPress. Tetapi untuk situs yang kompleks, arsitektur terbaik Oktober (paradigma pemrograman berorientasi objek dan Model-View-Controller) membuat perangkat lunak lebih mudah dipelihara dan, akibatnya, berpotensi lebih murah.



Masyarakat



Menjadi bagian dari komunitas WordPress dan memiliki akses ke sana adalah salah satu alasan paling kuat untuk menggunakan WordPress. Ini bukan hanya karena ukurannya (ini menggerakkan hampir sepertiga dari semua situs web di dunia, ada begitu banyak pemangku kepentingan yang terkait dengan WordPress, dan komunitasnya sangat besar) tetapi juga keragaman. Komunitas WordPress mencakup orang-orang dari berbagai profesi - pengembang, pemasar, desainer, blogger, penjual, dll., Orang-orang dari semua benua dan negara, berbicara banyak bahasa, dari latar belakang sosial dan ekonomi yang berbeda, dengan latar belakang pendidikan yang berbeda, penyandang cacat atau tanpa mereka mewakili perusahaan, organisasi nirlaba dan pemerintah, dll. Karena itu, ada kemungkinan bahwa apa pun masalah yang kita hadapi, seseorang kemungkinan besar akan dapat membantu di salah satuforum dukungan . Berkontribusi ke WordPress juga cukup sederhana: tim Make WordPress menyatukan para pemangku kepentingan yang tertarik untuk mendukung berbagai proyek (aksesibilitas, desain, internasionalisasi, dan banyak lainnya) dan mengatur bagaimana dan seberapa sering mereka berkomunikasi - terutama melalui saluran di obrolan khusus Anda di Slack .



Selain itu, komunitas WordPress adalah nyata dan nyata: ia tidak hanya ada di Internet, tetapi juga dikumpulkan secara offline di WordCamps dan pertemuan lainnya di seluruh dunia. Tahun 2018145 WordCamps diadakan di 48 negara, dengan total gabungan 45.000 tiket terjual, dan total 5.400 pertemuan dengan 687 grup. Karena itu, ada kemungkinan ada sel lokal di dekat sini, di mana setiap orang dapat bergabung untuk meminta bantuan, mempelajari cara menggunakan platform, belajar secara teratur, dan mengajar orang lain. Dalam hal ini, WordPress bukan hanya CMS, tetapi yang lebih penting, itu adalah orang-orang. Karena itu, Anda tidak boleh membuat keputusan untuk meninggalkan WordPress hanya karena karakteristik teknisnya, juga penting untuk mempertimbangkan komunitasnya.



gambar



Komunitas CMS Oktober terkadang lebih kecil dan kurang beragam daripada komunitas WordPress, meskipun ia terus tumbuh mengikuti popularitasnya yang semakin meningkat. Oktober menawarkan forum dukungan, di mana Anda dapat meminta bantuan, bagaimanapun, dia tidak terlalu aktif. Ada juga obrolan Slack (secara resmi dibekukan saat ini, komunitas sedang pindah ke Discord - approx. Transl.) , Yang cukup aktif dan di mana para pendiri Oktober secara teratur diperiksa untuk memastikan semua permintaan diselesaikan dengan baik. Obrolan ini adalah peluang besar untuk mendapatkan saran sederhana dan peretas seumur hidup tentang penggunaan Oktober, tetapi ini terutama untuk pengembang: tidak ada saluran tentang aksesibilitas, desain, internasionalisasi, dan topik lain seperti di WordPress. Setidaknya untuk sekarang. Saat ini tidak ada konferensi yang terkait dengan CMS Oktober, tetapi ada Laracon - sebuah konferensi untuk komunitas Laravel.



Pemelihara dan kebijakan manajemen proyek



Bisakah kita yakin bahwa perangkat lunak akan bertahan cukup lama, dan jika kita memutuskan untuk memulai suatu proyek hari ini, kita tidak perlu beralih ke platform lain di masa depan? Berapa banyak orang yang terlibat dalam pengembangan perangkat lunak? Siapa yang memutuskan ke mana arahnya?



Sepertiga dari semua situs di dunia diberdayakan oleh WordPress, dan memiliki cukup banyak pemangku kepentingan yang berkontribusi pada pengembangan perangkat lunak, sehingga Anda tidak dapat takut bahwa situs akan berhenti melayani. Namun, ada diskusi internal di WordPress mengenai model tata kelola, dan banyak anggota masyarakat mengatakan bahwa keputusan mengenai arah pengembangan WordPress dibuat secara sepihak oleh Automattic , yang mengoperasikan WordPress.com.. Tonggak penting adalah keputusan untuk meluncurkan Gutenberg, yang banyak kontributornya tidak setuju. Gutenberg jelas tidak memiliki komunikasi dari manajemen proyek selama tahap pengembangan dan rilis. Akibatnya, banyak anggota komunitas mempertanyakan peran "diktator lunak", yang secara historis dianggap oleh pendiri WordPress dan CEO Automattic Matt Mullenweg, dan menjelajahi berbagai model manajemen untuk menemukan model yang lebih cocok untuk masa depan WordPress. Masih harus dilihat apakah pencarian ini akan menyebabkan perubahan atau apakah status quo akan tetap ada.



Keputusan mengenai arah pengembangan CMS Oktober terutama dibuat oleh pendiri Alexei Bobkov dan Samuel Georges , serta pengembang dan manajer komunitas Luke Towers... Oktober CMS belum terbiasa dengan kemewahan seperti masalah manajemen: sekarang mereka lebih peduli dengan bagaimana membuat proyek berkelanjutan dan bagaimana membuatnya menghasilkan pendapatan untuk tim pengembangan.



Dokumentasi



Dokumentasi WordPress tidak komprehensif , tetapi melakukan tugasnya dengan cukup baik. Tetapi jika Anda memperhitungkan semua dokumentasi tentang WordPress dari semua sumber, seperti situs terkenal ( Smashing Magazine , trik CSS , dll.), Situs khusus ( WPShout , WPBeginner, dan banyak lainnya), blog pribadi, kursus online, hampir tidak ada aspek bekerja dengan WordPress yang belum disentuh.



Pada bulan Oktober CMS, situasi dengan dokumentasi di sumber pihak ketiga sangat jauh dari WordPress, tetapi dokumentasi di situsnya sendiri cukup luas dan pasti akan cukup untuk memulai pengembangan. Pendiri Oktober secara teratur menambahkan dokumentasi baru... Salah satu aspek yang saya sukai secara pribadi adalah duplikasi dokumentasi Laravel ke dalam dokumentasi Oktober untuk semua masalah yang relevan, sehingga pembaca tidak perlu mengisi bagian yang kosong dan menebak domain Oktober dan apa itu Laravel.



Namun ada juga kekurangannya. Dokumentasi Oktober menggunakan istilah yang berasal dari Laravel, seperti middleware, wadah layanan, fasad, dan kontrak, tanpa penjelasan yang memadai tentang apa itu. Karena itu, sebaiknya baca dokumentasi Laravel terlebih dahulu. Untungnya, ini luas dan mudah, dan screencasts Laravel - Laracasts adalah sumber hebat lain untuk belajar tidak hanya Laravel, tetapi pengembangan web secara umum.



Keluaran



Saya memutuskan untuk mencari tahu fitur apa yang mungkin menarik pengembang mencari alternatif untuk WordPress dengan membandingkan WordPress dengan CMS serupa. Itu seharusnya menjadi CMS open source gratis berdasarkan PHP dan membuat konten dinamis, didukung oleh beberapa komunitas. Dari CMS yang memenuhi persyaratan ini, saya memilih CMS Oktober untuk perbandingan karena saya sudah tahu satu atau dua hal tentang itu, dan karena saya suka pendekatan modular bersih yang disediakan oleh Laravel. Saya pikir ini adalah tampilan baru pengembangan situs web.



Dalam artikel ini, saya tidak mencoba untuk memilih pemenang, tetapi hanya menganalisis ketika masuk akal untuk memilih satu atau lain CMS, membandingkan kekuatan dan kelemahan mereka. Tidak ada CMS "terbaik", hanya ada yang paling tepat untuk situasi tertentu. Selain itu, siapa pun yang mencari CMS untuk digunakan dalam proyek tertentu dengan tim tertentu dan dengan anggaran khusus perlu membandingkan semua penawaran untuk melihat mana yang terbaik untuk proyek tertentu. Penting untuk tidak terbatas pada beberapa CMS, seperti yang saya lakukan dalam artikel ini, tetapi untuk memberi mereka semua kesempatan.



Sebagai pengembang, saya suka apa yang saya lihat di CMS Oktober, terutama karena memungkinkan Anda untuk membuat aplikasi modular yang disediakan melalui Laravel. Saya akan mempertimbangkan CMS ini untuk situs baru. Tetapi dalam proses penulisan artikel ini, saya juga menemukan kembali WordPress. Karena sangat populer, WordPress telah banyak dikritik, terutama mengenai basis kode yang ketinggalan zaman dan, baru-baru ini, pengenalan Gutenberg. Namun, WordPress memiliki beberapa fitur hebat (seperti model basis data yang dapat diskalakan) yang jarang dipuji tetapi patut dipertimbangkan juga. Dan yang paling penting, WordPress tidak boleh dianggap hanya dari sudut pandang aspek teknis: ukuran komunitas dan ekosistem menempatkannya satu atau dua tingkat lebih tinggi dari alternatif. Singkatnya, beberapa proyek mungkin mendapat manfaat dari menggunakan WordPress,sementara yang lain lebih baik menggunakan CMS Oktober atau platform lainnya.



Sebagai penutup, saya ingin menunjukkan bahwa mempelajari cara kerja CMS tertentu sangat berguna, apakah Anda memutuskan untuk menggunakan CMS tertentu atau tidak. Sebagai contoh, saya telah bekerja di WordPress selama bertahun-tahun, dan belajar tentang Oktober CMS adalah pandangan baru tentang subjek yang telah mengajarkan saya banyak hal (seperti memiliki pedoman standar PHP ) yang belum saya temukan di WordPress. Sekarang terserah saya untuk memutuskan apakah akan mengubah CMS atau tetap di WordPress.



All Articles