Bagaimana saya bisa menetapkan default per-situs web di config.xml?

13

Dengan modul khusus, saya lebih suka meletakkan pengaturan konfigurasi sistem di config.xml (bagian pengaturan default). Ini membuatnya lebih mudah ketika saya mendorong kode dari mesin lokal saya ke lingkungan dev / staging / live karena saya tidak perlu masuk ke admin dan memasukkan kembali pengaturan. Ada manfaat lain juga - bisa lebih cepat untuk melakukan hal-hal dalam editor teks dan Anda selalu dapat memiliki default yang masuk akal jika ada sesuatu di config.xml untuk itu.

Saya ingin melakukan ini untuk toko Magento multi-situs web yang memiliki harga pengiriman berbeda untuk berbagai situs web (dan tampilan toko). Saat ini toko saya disebut 'euro', 'usd' dan 'gbp'. Pandangan 'euro' mengambil default admin tanpa naik-naik di tingkat situs web sedangkan pandangan 'gbp' dan 'usd' dengan naik-naik di tingkat situs web.

    ...
    <default>
    <carriers>
        <my_courier>
            <stuff_goes_here_such_as_price/>
            <price>15.00</price>
            ...
        </my_courier>
    </carriers>
</default>

Kucing Henry
sumber

Jawaban:

21

Anda dapat menambahkan ini menggunakan <stores>simpul di config.xml Anda sebagai berikut.

<stores>
    <store_code>

Anda juga dapat melakukan ini di tingkat situs web dengan <websites>simpul di config.xml Anda sebagai berikut.

<websites>
    <website_code>

Satu-satunya contoh ini dalam kode inti adalah di sisi admin karena ini adalah satu-satunya situs web atau toko yang dijamin berada dalam sistem. Lihat app/code/core/Mage/Adminhtml/etc/config.xmlcontohnya.

<websites>
    <admin>
        <web>
            <routers>
                <frontend>
                    <disabled>true</disabled>
                </frontend>
            </routers>
            <default>
                <no_route>admin/index/noRoute</no_route>
            </default>
        </web>
    </admin>
</websites>
David Manners
sumber
Tidak tahu ini! Bisakah Anda memperluas untuk menunjukkan ini dengan nilai-nilai default contoh sehingga jelas kemana perginya?
Jonathan Hussey
Terima kasih banyak! Saya kira saya harus melakukan beberapa eksperimen untuk mendapatkan ini agar benar-benar bekerja dengan modul khusus saya, tetapi sangat bagus untuk mempelajari sesuatu yang baru! Terima kasih lagi!
Kucing Henry
@David Manners - itu sebenarnya bekerja dengan baik. Pertanyaan berikutnya - kotak centang 'use default', bagaimana saya bisa menghapusnya di tingkat toko / situs web?
Kucing Henry
Perlu dicatat ini juga berfungsi di Magento 2!
Josh Davenport