Làm cách nào tôi có thể đặt mặc định cho mỗi trang web trong config.xml?


13

Với các mô-đun tùy chỉnh, tôi thích đặt các cài đặt cấu hình hệ thống trong config.xml (phần cài đặt mặc định). Điều này giúp dễ dàng hơn khi tôi đẩy mã từ máy cục bộ của mình sang môi trường dev / staging / live vì tôi không cần phải vào quản trị viên và nhập lại cài đặt. Cũng có những lợi ích khác - có thể nhanh hơn để thực hiện mọi thứ trong trình soạn thảo văn bản và bạn luôn có thể có một mặc định hợp lý nếu có một cái gì đó trong config.xml cho điều đó.

Tôi muốn làm điều này cho một cửa hàng Magento đa trang web có giá vận chuyển khác nhau cho các trang web khác nhau (và lượt xem cửa hàng). Hiện tại, các cửa hàng của tôi được gọi là 'euro', 'usd' và 'gbp'. Chế độ xem 'euro' đưa quản trị viên mặc định không có tình trạng quá tải ở cấp trang web trong khi chế độ xem 'gbp' và 'usd' với mức độ vượt quá ở cấp độ trang web.

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

Câu trả lời:


21

Bạn có thể thêm phần này bằng cách sử dụng <stores>nút trong tệp config.xml của bạn như sau.

<stores>
    <store_code>

Bạn cũng có thể thực hiện việc này ở cấp trang web với <websites>nút trong tệp config.xml của bạn như sau.

<websites>
    <website_code>

Các ví dụ duy nhất về điều này trong mã lõi nằm ở phía quản trị viên vì đây là những trang web hoặc cửa hàng duy nhất được đảm bảo có trong hệ thống. Kiểm tra app/code/core/Mage/Adminhtml/etc/config.xmlmột ví dụ.

<websites>
    <admin>
        <web>
            <routers>
                <frontend>
                    <disabled>true</disabled>
                </frontend>
            </routers>
            <default>
                <no_route>admin/index/noRoute</no_route>
            </default>
        </web>
    </admin>
</websites>

Không biết điều này! Bạn có thể mở rộng để hiển thị điều này với các giá trị mặc định ví dụ để nó rõ ràng đi đâu không?
Jonathan Hussey

Cảm ơn rât nhiều! Tôi nghi ngờ tôi sẽ phải thực hiện một số thử nghiệm để làm cho nó thực sự hoạt động với mô-đun cụ thể của tôi, nhưng thật tuyệt khi học được điều gì đó mới! Cảm ơn một lần nữa!
Mèo của Henry

@David Cách cư xử - đó thực sự là hoạt động tốt. Câu hỏi tiếp theo - các hộp đánh dấu 'sử dụng mặc định', làm cách nào tôi có thể hủy đặt chúng ở cấp độ cửa hàng / trang web?
Mèo của Henry

Đáng chú ý điều này cũng hoạt động trong Magento 2!
Josh Davenport
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.