Menyiapkan toko Magento tidak hanya masalah mengembangkan ekstensi yang dapat dipasang sendiri tetapi juga membutuhkan banyak "entri manual" operasi seperti membuat atribut pengeditan akhir, kategori, produk, aturan harga halaman CMS dan sebagainya, belum lagi semua perubahan pada Konfigurasi Sistem.
Saya ingin bantuan Anda untuk menguraikan strategi terbaik ketika datang untuk menyebarkan toko Magento dari pengembangan ke lingkungan pementasan dan produksi.
Salah satu strategi saya adalah menulis "deploy module" yang secara terprogram menciptakan entitas yang disebutkan di atas, tetapi itu adalah tugas yang sangat memakan waktu dan kadang-kadang tampaknya bagi saya sedikit berlebihan.
Baru-baru ini saya mulai menggunakan Selenium IDE untuk mereproduksi tugas-tugas Admin tetapi waktu yang diperlukan untuk mengatur semua suite tes tidak jauh dari yang disebutkan di atas.
Mungkin solusi optimal dapat berupa penggunaan modul yang mampu melakukan snapshot dari Sistem Magento sehingga Anda dapat memilih apa yang akan digunakan.
Begitu:
- apa strategi Anda untuk digunakan?
- apakah ada modul yang mampu melakukan snapshot dari Sistem Magento sehingga Anda dapat memilih apa yang akan digunakan?
- jika modul semacam itu tidak ada dan asalkan modul tersebut merupakan solusi yang masuk akal, adakah yang tertarik untuk berkontribusi dalam pengembangannya?
Terima kasih!
Jawaban:
Pendapat saya adalah untuk menuliskan semuanya. Saya biasanya memiliki modul konfigurasi dasar untuk apa pun yang tidak terkait langsung dengan modul tertentu secara fungsional. (contoh membuat url kustom penulisan ulang untuk url situs sebelumnya ke url situs baru) dan menambahkan apa pun yang terkait dengan modul ke skrip instal sendiri.
Pola pikir di balik ini adalah bahwa jika situs perlu diinstal ulang, menggunakan db segar, maka semuanya kembali seperti semula. Ini juga membantu dalam kenyataan bahwa saya secara berkala memperbarui situs uat dengan salinan live db. Modul-modul di uat kemudian terus bekerja ketika mereka memasukkan konfigurasi mereka lagi.
Perubahan pada ongkos kirim, aturan keranjang, dll. (Pada dasarnya hal-hal yang dikelola sendiri oleh admin di admin) dianggap sebagai 'data volatil' dan tidak ditulis dalam skrip. Ini termasuk data produk. Klien memiliki opsi, dan didorong untuk menguji impor baru di situs uat terlebih dahulu.
Klien diberitahu untuk tidak membuat atribut, tetapi membuatnya dibuat melalui permintaan tiket. Ini kemudian memungkinkan saya untuk juga mengumpulkan informasi tentang maksud klien untuk atribut tersebut, dan kadang-kadang saya memiliki saran yang lebih baik, atau dapat membuat kode yang lebih baik karena saya memiliki pegangan tentang atribut apa yang ada, ditambah pada atribut yang dapat dipilih, memastikan data tersebut bersih.
Ya, scripting membutuhkan waktu lebih lama, tetapi akan membutuhkan waktu lebih lama untuk membuat ulang seluruh pengaturan konfigurasi situs secara manual nanti. Ini juga bisa memalukan jika Anda melupakan sesuatu dan menyebabkan situs tidak berfungsi dengan baik, atau memiliki pengembang baru yang bekerja di situs lokal yang tidak memiliki beberapa konfigurasi konfigurasi penting.
sumber
Saya telah melakukan beberapa penelitian beberapa bulan yang lalu. Inilah situs yang bisa Anda referensikan.
URL Magento Base dan instalasi dev / stagingMagento Pengembangan dan Penempatan
Panduan Magento Git dan Alur Kerja
Pembuangan Lebih Cepat dari Magento Database MySQL untuk Percabangan
sumber
Saya ingin mengucapkan terima kasih kepada Anda semua karena pertimbangan Anda telah mengilhami dan mendorong saya untuk mengembangkan ekstensi, yang disebut "Mageploy" dengan maksud untuk memecahkan masalah menjaga lingkungan yang berbeda dalam sinkronisasi.
http://www.mageploy.com
Mageploy masih harus diperpanjang, didokumentasikan dengan baik dan sepenuhnya diuji bahkan jika saya sudah menggunakannya dalam beberapa proyek yang memiliki beberapa manfaat.
Ini open source dan bantuan atau saran apa pun akan dihargai.
Salam
sumber
Sehubungan dengan menginstal skrip dan membuat entitas, perasaan umum saya adalah bahwa jika diperlukan atau diharapkan oleh modul, itu harus dibuat sebagai bagian dari skrip instalasi.
Baru-baru ini, dalam hal dev / stage / produksi, kami menggunakan situs pementasan sebagai salinan utama dari database untuk konten karena itu berarti bahwa klien dapat berkolaborasi. Di masa lalu, mungkin masalah terbesar yang kami temui adalah mengoordinasikan entri konten dengan klien, terutama yang berkaitan dengan pengunggahan produk.
Bagaimana menurut Anda foto itu akan berfungsi? Saya pikir di dunia yang ideal, Anda akan memiliki alat yang menunjukkan perbedaan antara dua database pada jenis tertentu (produk, kategori, CMS dll) dan memungkinkan Anda untuk menggabungkan perubahan menjadi satu sama lain, tetapi saya tidak mengetahui apa pun yang tersedia seperti bahwa.
sumber
Menurut pendapat saya membuat dan mengedit atribut, kategori, produk, aturan harga tidak ada hubungannya dengan "strategi penyebaran" Semua item ini cukup unik untuk sebuah toko, dan dalam kebanyakan kasus menuntut sedikit analisis dan penelitian yang tepat dari produk yang Anda akan menjual.
Jika Anda membuat toko "satu ukuran cocok untuk semua" dengan konfigurasi yang sama dari semua elemen yang Anda sebutkan, Anda bisa melakukan ekspor "snapshot" dari database Anda setelah Anda melakukan semua pengaturan yang Anda butuhkan untuk setiap toko.
sumber
Saya ingin menambahkan dua alat penghemat waktu yang sangat baik:
sumber