Yêu cầu tối thiểu của WPML

Để khởi chạy, cấu hình WPML yêu cầu WordPress cần những điều sau:

  • WordPress 4.7  trở lên
  • PHP 5.6 trở lên với giới hạn bộ nhớ ít nhất 128MB  trong khi khuyến nghị 256MB (xem cài đặt bộ nhớ WP ). Hãy nhớ 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à tất cả 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 hoặc cao hơn.
  • Điều đó bạn có thể tạo bảng trong cơ sở dữ liệu của mình.
  • API REST của WordPress phải được bật để WPML hoạt động bình thường.
  • Tiện ích mở rộng chuỗi Multibyte để sử dụng Bản dịch chuỗi WPML
  • Phần mở rộng SimpleXML để sử dụng tệp XLIFF trong Quản lý bản dịch WPML.
  • Hàm  eval () PHP  phải được bật. Thông tin thêm về điều này trong phần về eval ().
  • Mô-đun PHP libxml 2.7.8 trở lên.

Sử dụng các phiên bản PHP và MySQL trước đó

WPML có thể chạy trên các phiên bản PHP và MySQL trước đó, nhưng chúng tôi không thể kiểm tra điều đó. Nếu bạn đang sử dụng các phiên bản cũ hơn, chúng tôi đặc biệt khuyên bạn nên bật chế độ Debug (gỡ lỗi) của WPML . Điều này sẽ hiển thị bất kỳ lỗi PHP nào và cho bạn biết nếu mọi thứ không chạy như bình thường.

Hãy bình luận ở đây về việc sử dụng WPML với các phiên bản khác.

Cách kiểm tra phiên bản PHP mà bạn đang thực sự sử dụng

Một số công ty lưu trữ chia sẻ đã cài đặt cả PHP5 và PHP7. Cách tốt nhất để kiểm tra phiên bản bạn đang thực sự sử dụng là hỏi chính bộ xử lý PHP (không phải kỹ thuật viên của công ty lưu trữ).

Tạo một tệp có tên là php_info.php và đặt nó vào thư mục WordPress của bạn (ngay bên cạnh wp-config.php ). Tệp này phải chứa những nội dung sau:
<?php phpinfo(); ?>

không thành vấn đề, phải không? Nếu cần, bạn có thể tải xuống dưới dạng tệp ZIP. Lấy php_info.zip (tất nhiên, bạn sẽ cần giải nén nó trước khi tải lên máy chủ của mình).

Khi đó, hãy mở trình duyệt và truy cập https://yourdomain.com/php_info.php .

Bạn sẽ thấy một cái gì đó như thế này:

wpml php.info requirements
php-info.php hiển thị phiên bản PHP trên máy chủ

Trên đầu, nó cho biết bạn đang chạy phiên bản PHP nào. Nếu nó nói PHP Phiên bản 5.5, nó sẽ không hoạt động. Điều tốt nhất nên làm là gửi email cho công ty lưu trữ của bạn và hỏi họ cách kích hoạt PHP 5.6 trở lên.

Cấu trúc Permalink

WPML thêm thông tin ngôn ngữ vào URL. Nó đã được thử nghiệm với các cấu trúc liên kết cố định sau:

  • Mặc định
  • /% year% /% monthnum% /% postname% /

Giải trình:

Các cấu trúc liên kết cố định 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 như với /% postname% /. Tuy nhiên, với cấu trúc liên kết cố định này, không có cách nào WordPress sẽ nhầm lẫn giữa các trang và bài đăng, gây ra các vấn đề tiềm ẩn cho việc giải quyết ngôn ngữ.

Cách sử dụng hàm eval ()

Các eval () chức năng phải được cho phép vì WPML sử dụng TWIG khuôn khổ cho cấu trúc và mẫu của nó, mà làm cho WPML tin cậy về chức năng này.

Hầu hết các công cụ tạo khuôn mẫu phổ biến, chẳng hạn như Smarty và TWIG , đã phát hiện ra rằng việc ghi mã PHP vào tệp sẽ nhanh hơn. Bằng cách đó, nó có thể 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 chạy rất nhiều kiểm tra và vệ sinh để tránh các cuộc tấn công có thể xảy ra và nó an toàn khi được 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 giống như chúng tôi đã thực hiện trong quy trình Đảm bảo chất lượng của mình.

Chúng tôi vẫn đang nghiên cứu các giải pháp khả thi không yêu cầu biên dịch mẫu nhanh chóng và sẽ làm cho việc sử dụng hàm eval () trở nên không cần thiết. 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ị vô hiệu hóa trong PHP, nhưng một số phần mở rộng như Suhosin có thể làm điều đó. Các tiện ích mở rộng này có thể được nhà cung cấp dịch vụ lưu trữ của bạn cài đặt và định cấu hình.

Leave a Reply

Your email address will not be published