Để hoạt động, WPML có các yêu cầu sau:
- WordPress 4.7 trở lên
- PHP 7.0 trở lên với bộ nhớ ít nhất là 128 MB, khuyến nghị là 256 MB (xem cách tăng bộ nhớ WP). Lưu ý rằng bộ nhớ cần thiết cho trang web của bạn phụ thuộc vào nội dung, chủ đề và các plugin của bạn.
- MySQL 5.6 trở lên. Ngoài ra, bạn có thể sử dụng MariaDB 10.1 trở lên.
- Bạn có thể tạo các bảng trong cơ sở dữ liệu của mình.
- REST API WordPress phải được kích hoạt để WPML hoạt động bình thường.
- Tiện ích mở rộng Multibyte String cần được kích hoạt để WPML hoạt động bình thường.
- Tiện ích mở rộng SimpleXML để sử dụng tệp XLIFF trong WPML.
- Hàm eval()PHP phải được kích hoạt. Xem thêm thông tin trong phần về eval().
- Mô-đun PHP libxml 2.7.8 trở lên.
Cách kiểm tra phiên bản PHP bạn đang sử dụng
Để kiểm tra phiên bản PHP của máy chủ, hãy đăng nhập vào trang quản trị viên WordPress, đi tới Công cụ → Tình trạng trang web và nhấp vào tab Thông tin. Tại đây, bạn sẽ tìm thấy phiên bản PHP của mình trong phần Máy chủ.
Cấu trúc Permalink
WPML thêm thông tin ngôn ngữ vào URL. Hoạt động này đã được thử nghiệm với các cấu trúc permalink sau:
- Mặc định
- /%year%/%monthnum%/%postname%/
Giải trình:
Các cấu trúc permalink khác cũng có thể hoạt động nhưng có thể gây ra sự cố trên các cấu hình khác nhau. Trong tất cả các trang web của chúng tôi, chúng tôi đang sử dụng /%year%/%monthnum%/%postname%/. Đối với các trang, bạn sẽ nhận được các URL giống hệt với /%postname%/. Tuy nhiên, với cấu trúc permalink này, WordPress sẽ không bao giờ nhầm lẫn giữa các trang và bài đăng, tránh các vấn đề tiềm ẩn về độ phân giải ngôn ngữ.
Cách sử dụng hàm eval()
Hàm eval() phải được kích hoạt vì WPML sử dụng khung TWIG làm cấu trúc và tạo mẫu, khiến WPML phụ thuộc vào hàm này. Hầu hết các công cụ tạo mẫu phổ biến, như Smarty và TWIG, đều cho thấy rằng việc viết mã PHP vào một tệp sẽ nhanh hơn. Cách này sẽ giúp tận dụng bộ nhớ đệm OPcode và tránh yêu cầu xây dựng mã mẫu trong thời gian chạy. TWIG thực hiện rất nhiều hoạt động kiểm tra và vệ sinh để tránh các cuộc tấn công tiềm ẩn và hoàn toàn an toàn khi sử dụng với WPML. Tuy nhiên, chúng tôi không thể đảm bảo rằng các nhà phát triển khác đã thực hiện các bước kiểm tra tương tự như chúng tôi trong quy trình Đảm bảo Chất lượng. Chúng tôi vẫn đang nghiên cứu các giải pháp khả thi mà không yêu cầu tạo mẫu nhanh chóng và giúp lược bỏ việc sử dụng hàm eval(). Tuy nhiên, ở thời điểm hiện tại, đây là giải pháp tốt nhất. Xin lưu ý rằng thông thường, hàm eval() không thể bị tắt trong PHP, nhưng một số tiện ích mở rộng như Suhosin có thể làm được điều đó. Các tiện ích mở rộng này có thể được cài đặt và định cấu hình bởi nhà cung cấp dịch vụ lưu trữ của bạn.