Hướng dẫn nâng cấp PHP 8.1 cho website WordPress chuẩn nhất.
Vài ngày trước, PHP 8.1 đã chính thức có mặt trên dịch vụ WordPress Hosting của WP Căn bản. Đây là phiên bản PHP mới nhất tính đến thời điểm hiện tại với nhiều cải tiến và tính năng bổ sung. Nếu có nhu cầu tìm hiểu kỹ hơn về phiên bản này, các bạn có thể tham khảo tại đây. Quay trở lại vấn đề chính, vì là phiên bản mới nên rất nhiều theme và plugin WordPress vẫn chưa hỗ trợ tốt cho PHP 8 chứ đừng nói là PHP 8.1. Chắc hẳn, sẽ cần chờ một thời gian khá dài nữa để các lập trình viên kịp update code. Tuy nhiên, ngay lúc này, nếu bạn vẫn muốn thử vận may (biết đâu toàn bộ theme và plugin trên website của bạn đều tương thích với PHP 8.1) thì sau đây là hướng dẫn chi tiết.
Tham khảo thêm:
Điều kiện sử dụng PHP 8.1
Không riêng gì dịch vụ WordPress Hosting của chúng tôi, mọi hosting đều có thể nâng cấp PHP 8.1 theo hướng dẫn bên dưới, miễn là nó thỏa mãn đầy đủ các yêu cầu sau đây:
- Hosting sử dụng cPanel/ DirectAdmin và được trang bị tính năng cho phép tùy chọn phiên bản PHP (Select PHP Version).
- Tích hợp sẵn PHP 8.1.
- Theme và plugin của bạn tương thích tốt với PHP 8.1.
- Website của bạn đã được update lên phiên bản WordPress mới nhất. Các phiên bản WordPress thấp hơn chưa hỗ trợ PHP 8.1.
Nâng cấp PHP 8.1 cho WordPress
1. Đầu tiên, các bạn truy cập vào cPanel/ DirectAdmin, tìm mục Select PHP Version và click vào đó.
2. Trong tab Extensions, các bạn lựa chọn PHP 8.1 trong mục Current PHP Version rồi click vào nút Set as current. Tiếp theo, thiết lập các extension (module) giống như hình bên dưới.
Danh sách extension có thể thay đổi tùy theo từng nhà cung cấp. Tuy nhiên, hãy kích hoạt hết những extension tương tự mà bạn thấy xuất hiện ở trên.
Lưu ý: các thiết lập module kể trên là tối ưu nhất dành cho mã nguồn WordPress, chúng chưa được kiểm nghiệm trên các mã nguồn khác.
3. Chuyển qua tab Options, các bạn thiết lập các thông số như sau:
Các thông số tối đa của memory_limit
, post_max_size
và upload_max_filesize
có thể thay đổi tùy theo nhà cung cấp hosting. Nếu bạn được phép tùy chỉnh thông số nào, hãy cố gắng thiết lập nó giống như hình bên trên.
4. Truy cập website của bạn và kiểm tra xem giao diện cũng như các tính năng đã hoạt động bình thường hay chưa. Nếu rồi thì có nghĩa là các bạn đã nâng cấp PHP 8.1 thành công. Nếu có lỗi xảy ra, các bạn hãy kiểm tra error_log
để xem theme hay plugin nào không tương thích. Trong trường hợp không thể khắc phục, các bạn chỉ cần chuyển về phiên bản PHP cũ là được.
Bạn đang sử dụng phiên bản PHP nào cho website WordPress của mình? Bạn đã nâng cấp PHP 8.1 chưa? Hãy chia sẻ với chúng tôi quan điểm và ý kiến của bạn trong khung bình luận bên dưới.
Nếu bạn thích bài viết này, hãy theo dõi blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất nhé. Cảm ơn rất nhiều. :)
Mình vừa lên 8.1 nhưng chạy không ổn định với giao diện Flatsome. Lại quay về 7.4.
Phiên bản mới quá nên nhiều theme và plugin chưa kịp tương thích đâu. Site của mình cũng đang dùng PHP 8.0 thôi, chưa lên 8.1. :D
Mình đổi qua 8.0 thì hoạt động tốt. Để thử nghiệm vài hôm xem sao. Cảm ơn H nhiều.
Bác thấy trải nghiệm bản 8.1 như thế nào?
Mình đang dùng PHP 8.0 thôi, chưa nâng cấp lên 8.1. Nhưng theo đánh giá của php.net thì PHP 8.1 nhanh hơn PHP 8.0 khoảng 3.5% trên nền tảng WordPress. :P
Ui ngon đấy, đợi các plugin và theme đc hỗ trợ thì nâng cấp lên bác ạ.
Thằng Symfony còn được buff thêm 23% sức mạnh khi nâng cấp lên PHP 8.1 cơ. 3.5% của WordPress là ít đấy. :D
Hôm nay mới vào cpanel check, vẫn đang 7.4 :D
PHP 7.4 vẫn là phiên bản tương thích tốt nhất ở thời điểm này. Nhiều theme và plugin vẫn chưa hỗ trợ PHP 8.0 chứ đừng nói là 8.1. :D
Vậy thôi cứ để 7.4, vì web đang ổn định :)
bản PHP Version ở hosting t đặt lên 8.1 rồi mà ở web wordpress chỉ báo là 7.0.33 là sao ô nhỉ?
Bạn thử mở file
.htaccess
ra kiểm tra xem bên trong có code nào quy định phiên bản PHP không nhé. Nếu có thì xóa đi.# BEGIN rlrssslReallySimpleSSL rsssl_version[4.0.14]
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
# END rlrssslReallySimpleSSL
# BEGIN WordPress
# The directives (lines) between "BEGIN WordPress" and "END WordPress" are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/opentype
# For Older Browsers Which Can't Handle Compression
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Options -Indexes
Ông xem hộ t vs nó là đoạn nào, cái này t ngu ko hiểu:
Không có bạn ạ. Bạn kiểm tra xem trong host có trang bị tính năng “MultiPHP Manager” không?
Không có tính năng “MultiPHP Manager” ông ạ
Nếu vậy thì mình cũng chịu. Bạn thử liên hệ nhà cung cấp hosting nhờ họ hỗ trợ kiểm tra xem sao nhé.
T đã liên hệ và họ nâng cấp lên rồi nhưng gặp vấn đề mới là kích vào Dashboard và Plugin thì nó ko vào được mà tải xuống file index.php là sao nhỉ
1 là do host. 2 là do mã nguồn của bạn không tương thích với PHP mới. Bạn đã update WordPress, theme và các plugin lên phiên bản mới nhất trước khi nâng cấp PHP chưa?
THanks ông bạn, đã sửa đc rồi
Lỗi do đâu thế bạn?