Vuejs + WordPress + Localization
Như chúng ta đã biết, WordPress hỗ trợ localization cho Javascript thông qua hàm wp_localize_script()
. Về cách sử dụng hàm này mình sẽ không đề cập nhiều, vì đã có docs rất rõ ràng.
Quay trở lại việc sử dụng localization cho Vuejs. Thay vì gọi trực tiếp object_name
từ hàm wp_localize_script
thì mình sẽ viết một plugin nhỏ cho Vuejs trong đó sẽ viết một hàm tạm gọi là l10n
(localization) và đưa vào mixin
để có thể dùng ở bất kì nơi nào trong môi trường Vuejs.
Đầu tiên mình gọi hàm wp_localize_script
và truyền vào một vài giá trị như sau:
Tiếp đến phần Vuejs, tạo một file localization/index.js
. Trong file này mình viết code như sau:
Sau đó chỉ cần gọi plugin này ra và sử dụng:
Sử dụng trong HTML
Sử dụng trong Vue instance
Cách làm này có tác dụng gì so với việc gọi trực tiếp từ object_name
:
- Trong hàm
l10n
bạn có thể customize thêm trước khi trả về giá trị. - Gọi hàm thì sẽ gọn gàng sạch sẽ hơn thay vì gọi
object_name.l10n.key
- Học được viết plugin cho Vuejs