Chúng tôi vừa phát hành WPML Multilingual & Multicurrency for WooCommerce 5.5.6. Bản phát hành này tập trung vào hiệu suất, nhằm giải quyết một trong những phàn nàn phổ biến nhất từ các chủ cửa hàng. Việc lưu một sản phẩm biến thể trong trình chỉnh sửa WooCommerce thường bị chậm khi danh mục của bạn có nhiều biến thể và nhiều ngôn ngữ. Bản phát hành này sẽ khắc phục điều đó.
Tại sao việc lưu sản phẩm biến thể lại bị chậm
Khi bạn lưu một sản phẩm, WPML Multilingual & Multicurrency for WooCommerce (WCML) sẽ giữ cho mọi bản dịch đồng bộ với bản gốc. Công việc đó bao gồm giá cả, thuộc tính, kho hàng, biến thể và các dữ liệu liên quan khác.
Trên một trang web đơn ngữ, đơn sản phẩm, công việc đó diễn ra rất nhanh. Nhưng trên một cửa hàng có 100 biến thể với 7 ngôn ngữ, cùng một thao tác lưu đó sẽ âm thầm thực hiện hàng trăm cập nhật cơ sở dữ liệu. Hầu hết các cập nhật đó dành cho dữ liệu dịch thuật vốn thực tế không hề thay đổi.
Điều này từng được coi là một sự đảm bảo an toàn, giúp chắc chắn rằng không có gì bị mất đồng bộ. Tuy nhiên, nó cũng đồng nghĩa với việc sửa một lỗi chính tả cũng tốn chi phí xử lý tương đương với việc nhập một sản phẩm mới hoàn toàn. Các cửa hàng có danh mục lớn đã cảm nhận rõ điều này, và nhiều bạn đã phản hồi với chúng tôi.
WCML 5.5.6 thay đổi điều đó.
Mới: Chế độ đồng bộ trong phạm vi trình chỉnh sửa
Chúng tôi đã thêm một cài đặt mới gọi là Variation translation sync on product save (Đồng bộ bản dịch biến thể khi lưu sản phẩm). Nó có hai chế độ.
Đồng bộ hoàn toàn (Mặc định, Không thay đổi)
WCML tiếp tục thực hiện những gì nó đang làm hiện nay. Mỗi lần lưu sẽ đồng bộ hóa mọi biến thể ở mọi ngôn ngữ. Đây là sự đảm bảo mạnh mẽ nhất để các bản dịch luôn khớp với nguồn.
Đồng bộ hoàn toàn vẫn là mặc định sau khi bạn nâng cấp. Trang web của bạn không thay đổi trừ khi bạn chọn cách khác.
Đồng bộ trong phạm vi trình chỉnh sửa (Mới, Tùy chọn)
Trong chế độ này, việc lưu từ trình chỉnh sửa WooCommerce chỉ đồng bộ hóa các biến thể mà bạn thực sự đã chỉnh sửa.
Chúng tôi đã thử nghiệm trên một sản phẩm có 9 biến thể được dịch sang 19 ngôn ngữ, đo lường toàn bộ chu kỳ lưu — từ khi nhấp vào Lưu cho đến khi trình chỉnh sửa có thể sử dụng lại được. Khi chỉ cập nhật mô tả sản phẩm, phần đóng góp của WCML + WPML đã giảm từ 2,08 giây xuống còn 1,42 giây, giảm 32%. WooCommerce và WordPress không bị ảnh hưởng. Tổng thời gian lưu giảm từ 5,52 giây xuống 4,86 giây — cải thiện tổng thể 12%.
Thời gian xử lý để cập nhật một sản phẩm

Kết quả của bạn sẽ khác nhau tùy thuộc vào WooCommerce, giao diện, máy chủ và các plugin khác của bạn. Các cửa hàng có danh mục lớn và nhiều ngôn ngữ sẽ thấy được hiệu quả rõ rệt nhất.
Còn những biến thể bạn không chạm đến thì sao?
Chúng tôi biết đây là câu hỏi đầu tiên. Có hai lớp bảo vệ.
Thông báo sau khi lưu. Khi chế độ đồng bộ trong phạm vi trình chỉnh sửa được bật, mỗi lần lưu sẽ hiển thị một thông báo. Nó liệt kê số lượng biến thể đã được bỏ qua. Nó cũng cung cấp cho bạn một nút bấm duy nhất: Force update all variation translations (Bắt buộc cập nhật tất cả bản dịch biến thể). Bằng cách này, việc đồng bộ hoàn toàn luôn sẵn sàng chỉ với một cú nhấp chuột, bạn không cần phải chuyển đổi chế độ để thực hiện nó.

Một lời nhắc khi chế độ Đồng bộ hoàn toàn đang gây lãng phí tài nguyên. Nếu bạn vẫn để ở chế độ Đồng bộ hoàn toàn, chúng tôi sẽ theo dõi các lần lưu thực hiện nhiều tác vụ mà không có thay đổi thực tế nào. Khi thấy mô hình đó, chúng tôi sẽ gợi ý chuyển đổi chế độ. Lời nhắc này chỉ xuất hiện trên các sản phẩm lớn. Chúng tôi sử dụng ngưỡng biến thể × ngôn ngữ ≥ 120. Dưới mức đó, chi phí xử lý không đáng kể, nên chúng tôi sẽ không làm phiền bạn.

Nơi áp dụng đồng bộ trong phạm vi trình chỉnh sửa
Đồng bộ trong phạm vi trình chỉnh sửa chỉ ảnh hưởng đến các lần lưu từ trình chỉnh sửa sản phẩm WooCommerce. Đó là màn hình mà bạn cảm nhận được sự chậm chạp.
Nó không thay đổi:
- Trang quản lý dịch thuật
- Tự động dịch mọi nội dung
- Nhập tệp CSV, lệnh gọi API và các cách chỉnh sửa sản phẩm bằng lập trình khác
- Đồng bộ chạy ngầm sau khi dịch vụ dịch thuật trả kết quả
Quy trình làm việc của biên dịch viên không bị ảnh hưởng.
Cách bật chế độ đồng bộ trong phạm vi trình chỉnh sửa
Sau khi cập nhật lên phiên bản 5.5.6, hãy đi tới WooCommerce → WCML và nhấp vào tab Settings. Bạn sẽ thấy tùy chọn Variation translation sync on product save. Hãy chuyển nó sang Only sync variations edited in the editor và nhấp vào Save changes.

Lưu bất kỳ sản phẩm nào để xác nhận thông báo sau khi lưu xuất hiện.
Thêm các cải tiến về hiệu suất
Trang sản phẩm tải nhanh hơn trên các cửa hàng có Object Caching
Nhiều bạn sử dụng bộ nhớ đệm đối tượng (object cache) liên tục như Redis hoặc Object Cache Pro. Với các bộ nhớ đệm đó, các trang sản phẩm có nhiều đánh giá sẽ tải nhanh hơn đáng kể sau bản cập nhật này.
Chúng tôi đã thay đổi cách WCML xử lý bộ nhớ đệm đánh giá sản phẩm. Trước đây, nó sẽ xóa một phần bộ nhớ đệm đối tượng của bạn mỗi khi xem sản phẩm. Giờ đây, nó hoạt động cùng với bộ nhớ đệm đối tượng thay vì xóa nó.
Tính toán giỏ hàng chỉ chạy khi có thay đổi
WCML từng tính toán lại tổng số giỏ hàng trên mọi trang mà một người mua đã đăng nhập truy cập. Điều đó bao gồm các trang sản phẩm, trang tài khoản và kho lưu trữ cửa hàng. Nó xảy ra ngay cả khi không có gì trong giỏ hàng thay đổi.
Từ bản phát hành này, chúng tôi chỉ tính toán lại khi tiền tệ, tỷ giá hối đoái hoặc nội dung giỏ hàng thực sự thay đổi. Trên mọi trang khác, WCML sẽ không can thiệp.
Hành vi giỏ hàng mini gọn gàng hơn
WooCommerce đã kích hoạt một yêu cầu làm mới giỏ hàng khi bắt đầu mỗi phiên mua sắm. Yêu cầu đó giúp giỏ hàng mini luôn chính xác.
WCML từng kích hoạt yêu cầu thứ hai trên mỗi lần tải trang. Nó kích hoạt ngay cả khi giỏ hàng trống.
Yêu cầu thứ hai đó đã được loại bỏ trong phiên bản 5.5.6. Ít yêu cầu chạy ngầm hơn. Giảm tải cho máy chủ của bạn.
Giảm bớt xử lý cho hình ảnh sản phẩm đã dịch
Chúng tôi đã đơn giản hóa cách xử lý hình ảnh thư viện sản phẩm đã dịch.
Trước đây, công việc này được thực hiện hai lần. Một lần khi sản phẩm được lưu hoặc dịch. Sau đó lại thực hiện một lần nữa trên mỗi lượt xem trang. Lượt xử lý khi xem trang đã được loại bỏ. Dữ liệu được lưu khi bạn dịch sản phẩm hiện được tin cậy là nguồn dữ liệu chính xác duy nhất.
Kết quả trên trang web của bạn vẫn như cũ, nhưng với ít truy vấn hơn.
Trang sản phẩm biến thể lớn: Hãy kết hợp bản cập nhật này với WooCommerce mới nhất
Một số bạn đã báo cáo việc tải trang sản phẩm đơn lẻ có hàng trăm biến thể rất chậm. Chúng tôi đã điều tra. Bản thân WooCommerce 10.4.x cũng có vấn đề về hiệu suất khiến tình trạng chậm chạp trở nên trầm trọng hơn. WooCommerce 10.7 đã khắc phục vấn đề đó.
Nếu bạn gặp tình trạng này trên cửa hàng của mình, hãy cập nhật lên WooCommerce 10.7 trở lên cùng với WCML 5.5.6. Đó là con đường nhanh nhất để tiến về phía trước.
Các bản sửa lỗi hữu ích
Biến thể hiện sẽ quay lại ngôn ngữ mặc định
Một số cửa hàng cho phép các ngôn ngữ phụ quay lại ngôn ngữ mặc định khi sản phẩm chưa được dịch. Trên các cửa hàng đó, các biến thể trên một sản phẩm chưa dịch từng bị biến mất khỏi danh sách thả xuống. Giờ đây chúng vẫn hiển thị, quay lại ngôn ngữ mặc định đúng như cài đặt đã hứa.
Làm mới số lượng bộ lọc trên các trang cửa hàng đã dịch
Bạn thêm một thuộc tính mới vào một sản phẩm đã được dịch. Bạn mong đợi số lượng Lọc theo thuộc tính trên trang cửa hàng đã dịch phản ánh sự thay đổi đó. Chúng đã không làm vậy cho đến bản phát hành này. Trang cửa hàng ngôn ngữ gốc đã cập nhật, nhưng trang cửa hàng đã dịch thì không.
WCML hiện sẽ xóa đúng bộ nhớ đệm WooCommerce sau khi đồng bộ hóa các thuộc tính sang bản dịch. Cả hai cửa hàng sẽ luôn thống nhất với nhau.
Biểu tượng tải của trình chuyển đổi tiền tệ trên mọi trình chuyển đổi
Bạn có thể đặt shortcode [currency_switcher] nhiều lần trên cùng một trang. Ví dụ: ở đầu trang và một lần nữa ở chân trang. Biểu tượng tải từng chỉ xuất hiện trên trình chuyển đổi cuối cùng. Từ bản phát hành này, nó sẽ xuất hiện trên tất cả các trình chuyển đổi khi khách hàng thay đổi tiền tệ.
Tương thích với WooCommerce 10.8
WooCommerce 10.8 dự kiến phát hành vào thứ Ba, ngày 26 tháng 5 năm 2026. Chúng tôi đã thử nghiệm WCML 5.5.6 với phiên bản đó. Bản phát hành của chúng tôi được ấn định vào ngày hôm sau. Phiên bản bạn cài đặt là phiên bản chúng tôi đã xác minh với bản dựng WooCommerce chính thức.
Cập nhật phản hồi
Như thường lệ, chúng tôi đang triển khai bản phát hành này dần dần. Nếu bạn muốn cập nhật ngay lập tức:
- Trong phần quản trị trang web của bạn, hãy đi tới Plugins → Add New Plugin. Nhấp vào tab Commercial.
- Nhấp vào Check for updates.
- WPML Multilingual Multicurrency for WooCommerce 5.5.6 sẽ xuất hiện trong danh sách. Hãy cập nhật từ đó.
Chúng tôi rất muốn nghe về cách hoạt động của chế độ đồng bộ trong phạm vi trình chỉnh sửa trên cửa hàng của bạn. Chúng tôi đặc biệt quan tâm nếu bạn có một danh mục lớn với nhiều biến thể và nhiều ngôn ngữ. Hãy để lại bình luận bên dưới hoặc mở một phiếu hỗ trợ trong diễn đàn của chúng tôi. Hãy cho chúng tôi biết kết quả đo lường của bạn.