Theo mặc định URL Key
trên trang sản phẩm là phạm vi toàn cầu.
EDIT: Theo đề xuất của FlorinelChis, phạm vi có thể thay đổi trong Quản lý thuộc tính. Tuy nhiên, điều này phá vỡ hành vi chuyển đổi xem cửa hàng.
Điều này đã được thử nghiệm vào ngày 1.7.0.2 với dữ liệu mẫu và bật "Thêm mã cửa hàng vào URL" :
- chỉnh sửa một sản phẩm và đặt một url khác nhau cho một kho lưu trữ cụ thể (tiếng Pháp)
- Lập chỉ mục lại
- Mở trang sản phẩm trên trang web trên cửa hàng tiếng Anh
- Chuyển sang tiếng Pháp: bạn sẽ có URL trang chống lại
/French/
Chuyển về tiếng Anh -> lỗi trang 404 (url bỏ lỡ mã cửa hàng
/default/
Làm thế nào để làm cho nó hoạt động chính xác với cửa hàng xem / chuyển đổi ngôn ngữ?
Chi tiết:
- URL cho tiếng Anh:
/default/sony-vaio-vgn-txn27n-b-11-1-notebook-pc.html
- URL cho tiếng Pháp:
/french/sony-vaio-vgn-txn27n-b-11-1-notebook-pc-french.html
Nếu tôi trên trang web tiếng Anh trên trang này -> /default/sony-vaio-vgn-txn27n-b-11-1-notebook-pc.html
Sau đó tôi chuyển sang tiếng Pháp:
Tôi đã nhận được URL này ( mã cửa hàng bị bỏ qua ):
MAGEDOMAIN/sony-vaio-vgn-txn27n-b-11-1-notebook-pc-french.html
Vì vậy, magento viết lại url một cách chính xác nhưng bỏ lỡ mã cửa hàng vì một số lý do
Tài liệu tham khảo:
Để chắc chắn điều này có liên quan đến /core/model/store.php
và /core/model/url/rewrite.php
, và đặc biệt với các phương thức đó:
Mage_Core_Model_Url_Rewrite::rewrite
Mage_Core_Model_Store::getCurrentUrl
CẬP NHẬT
Nếu bạn đang sử dụng bản sửa lỗi 1.9.1 @Vinai sẽ không hoạt động, hãy kiểm tra câu trả lời mới tôi đã thêm