Có thể chia sẻ nội dung giỏ hàng giữa các trang web nhiều cửa hàng?


7

Tôi có một khách hàng cần một thiết lập nhiều cửa hàng. Họ yêu cầu nội dung của giỏ hàng phải được chia sẻ giữa các trang web . Ngoài ra khi khách hàng chuyển đổi giữa các trang web, giá của mặt hàng giỏ hàng có thể khác nhau và bằng các loại tiền tệ khác nhau.

Đây có phải là có thể làm gì? Theo như tôi biết có thể giữa các cửa hàng xem. Bất kỳ thông tin sẽ được nhiều đánh giá cao.

Cảm ơn.


Động lực để sử dụng trang web so với lượt xem cửa hàng là gì?
Ben Lessani - Sonassi

Tôi hiện đang thực hiện một số nghiên cứu và quan điểm cửa hàng có thể thực sự tốt. Bạn có biết nếu một sản phẩm có giá khác nhau trên mỗi lượt xem cửa hàng thì điều này sẽ thay đổi trong giỏ hàng khi bạn chuyển đổi lượt xem cửa hàng?
Paul Donnelly

Vì giá không phải là thuộc tính có thể xác định người dùng, bạn không thể thay đổi phạm vi từ cửa hàng toàn cầu>. Bạn có thể thay đổi nó từ trang web toàn cầu> thông qua System > Configuration > Catalogue > Price. Vì vậy, về cơ bản không thể thay đổi giá cho mỗi lượt xem cửa hàng ( kẻo, không phải thông qua GUI quản trị )
Ben Lessani - Sonassi

OK, cảm ơn vì sự giúp đỡ của bạn Ben. Tôi sẽ tiếp tục nhìn vào nó.
Paul Donnelly

Điều này được trả lời trên stackoverflow: stackoverflow.com/questions/12374289/iêu
Toon Van Dooren

Câu trả lời:


7

Magento không cho phép chia sẻ giỏ hàng giữa các trang web. Các đối tượng phiên cho các trang web riêng lẻ hoàn toàn tách rời, các sản phẩm trong một trang web có thể không thuộc về trang web khác, cấu trúc danh mục và khả năng hiển thị của dữ liệu sẽ khác nhau. Như bạn đã chỉ ra, giá cả có thể khác nhau từ trang web này sang trang web khác, cũng như các chương trình khuyến mãi, thuế suất, v.v.

Từ góc độ dữ liệu, sẽ rất khó để chia sẻ giỏ hàng giữa các trang web cho rằng một sản phẩm bạn có thể có trong giỏ hàng của bạn có thể có hoặc không có trong trang web tiếp theo bạn truy cập. Điều này sẽ tạo ra vấn đề lớn với các sản phẩm biến mất và / hoặc lỗi trong giỏ hàng do sản phẩm không có sẵn.

Một cái gì đó như thế này sẽ phải được xây dựng hoàn toàn tùy chỉnh và tôi chắc chắn rằng nó sẽ không đến nếu không có vấn đề và sự bất thường.

Không biết nhiều hơn để bối cảnh hóa tình huống, tôi nghi ngờ rằng sử dụng nhiều trang web với giá và tiền tệ khác nhau cộng với việc chia sẻ giỏ hàng giữa chúng là giải pháp tốt nhất. Nếu giá cả các loại tiền tệ khác nhau, tại sao các giỏ hàng thậm chí cần phải được chia sẻ? Điều đó không có ý nghĩa với tôi và tôi gặp khó khăn khi tưởng tượng một kịch bản mà điều này sẽ phù hợp. Có lẽ bạn có thể khai sáng chúng tôi.


Cảm ơn vì điều đó @davidalger. Chắc chắn tôi sẽ rất vui khi được soi sáng cho bạn về những gì đang xảy ra. Khách hàng của chúng tôi muốn có một trang web Vương quốc Anh (Bắc Ireland) và ROI (Cộng hòa Ireland) với cùng các sản phẩm nhưng các sản phẩm ROI đắt hơn và bằng đồng euro. Khách hàng không muốn ROI hoặc khách hàng Vương quốc Anh vận chuyển đến một trong hai quốc gia vì lý do pháp lý. Nếu bạn đang ở ROI, bạn phải mua thông qua trang web ROI và tương tự như vậy đối với Vương quốc Anh. Khách hàng muốn chia sẻ giỏ hàng để khách hàng chuyển đổi và họ không phải chọn lại sản phẩm. Nó khá phức tạp, tôi hy vọng điều này có ý nghĩa.
Paul Donnelly

1
Gotcha. Làm cho mọi thứ rõ ràng hơn một chút, có, nhưng phức tạp như bạn nói! :) Có lẽ bạn có thể, thay vì chia sẻ giỏ hàng, hãy thiết lập mọi thứ để khi họ chuyển sang trang web khác, giỏ hàng sẽ bị xóa khỏi một trang web và các sản phẩm có sẵn trên trang web được thêm vào giỏ hàng xe đẩy? Không hoàn toàn giống như giỏ hàng được chia sẻ, nhưng đạt được mục tiêu không phải chọn lại sản phẩm.
davidalger

7

Tôi đã viết một bài báo ở đây làm việc cho tôi để chia sẻ giỏ hàng giữa các trang web. Mã đầy đủ cung cấp.
Ý tưởng chính là thay đổi khóa phiên giữ id báo giá và thay đổi chế độ xem cửa hàng chia sẻ báo giá. Theo mặc định Magento nhớ id trích dẫn trong $_SESSION['quote_id_{Store id here}']. (kiểm tra Mage_Checkout_Model_Session::_getQuoteIdKey) Điều đó nên được thay đổi thành $_SESSION['quote_id'].
Chế độ xem cửa hàng chia sẻ giỏ hàng cần được thay đổi từ tất cả các lượt xem cửa hàng trong một trang web sang tất cả các lượt xem cửa hàng. Kiểm traMage_Sales_Model_Quote::getSharedStoreIds


Cảm ơn vì điều đó, những người khác dường như muốn trích dẫn những gì magento không thể làm, như magento xác định trường hợp sử dụng, cảm ơn một lần nữa!
Tobias Hagenbeek

Cứu người !! Hoạt động cho Magento 2 nếu bạn làm hỏng các tệp chính xác
LefterisL

@TerisL. CHÚA ƠI. Tôi không mong đợi điều đó. Cảm ơn cho những người đứng đầu lên.
Marius

np. Chỉ có vấn đề tôi chưa giải quyết được, trong Mage 2, nó nhận được Trích dẫn bằng cách sử dụng chức năng được bảo vệ bên trong Mage \ Session \ Model \ Session. Bất kỳ ý tưởng về làm thế nào để ghi đè đó? Các plugin dường như không hoạt động để bảo vệ.
LefterisL

3

Có ba phạm vi chung trong Magento:

Trang mạng

Đây là nơi bạn có thể có các trang web (hoặc doanh nghiệp) khác nhau, như awesome.com và hor awesome.com.

Các sản phẩm từ một trang web không trộn lẫn (không được chia sẻ) trong cùng một giỏ hàng với các sản phẩm từ một trang web khác.

Cửa hàng

Đây là nơi bạn có thể có các thương hiệu phụ hoặc nhiều thương hiệu dưới một mái nhà, ví dụ: homes.awclaw.com, Cars.awclaw.com.

Về mặt kỹ thuật, bạn có thể có cả awesome.com và hor awesome.com chỉ đến các cửa hàng khác nhau website, nhưng nó có thể sẽ đánh bại toàn bộ mục đích.

Tất cả các sản phẩm từ mỗi sản phẩm stoređược chia sẻ trong một giỏ hàng (nhưng không phải tất cả các sản phẩm sẽ được 'chỉnh sửa' trong giỏ hàng)

Lượt xem cửa hàng

Đây là nơi cùng một tên miền liên kết đến nhiều biến thể, ví dụ: có và phiên bản tiếng Anh của awesome.com, cũng như phiên bản tiếng Tây Ban Nha của awesome.com.

Một cách khác store viewscó thể được sử dụng: khách hàng khác nhau có được trải nghiệm khác nhau.

Tất cả các sản phẩm trộn và có thể chỉnh sửa trong một giỏ hàng.

Tóm lược

Có vẻ như bạn cần sử dụng nhiều storesdưới một trang web để đạt được kết quả của bạn.

Để biết thêm thông tin về chủ đề này xem tại đâyở đây .

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.