Trong PHP từ phiên bản 8.4, việc đánh dấu tham số có thể nhận giá trị null phải sử dụng kiểu dữ liệu có thể nhận giá trị null một cách tường minh.

Tình trạng
Ghi nhận từ website: https://n*h*r*.com, ngày ~5/11/2026.
- PHP phiên bản: 8.4;
- Plugin: kk Star Ratings – Rate Post & Collect User Feedbacks, phiên bản: 5.4.10.5, cập nhật lần cuối 3 tháng trước.
Tập tin debug.log ghi nhận thông báo lỗi giống như dưới đây:
[05-Nov-2026 17:06:00 UTC] PHP Deprecated: Bhittani\StarRating\functions\autoload(): Implicitly marking parameter $path as nullable is deprecated, the explicit nullable type must be used instead in /home/rrwbpjwj/public_html/wp-content/plugins/kk-star-ratings/src/functions/autoload.php on line 28
Các tập tin bị ảnh hưởng (12 tập tin)
- kk-star-ratings/src/core/actions/metabox/content.php
- kk-star-ratings/src/core/actions/metabox/index.php
- kk-star-ratings/src/core/functions/ld_json.php
- kk-star-ratings/src/core/functions/width.php
- kk-star-ratings/src/core/wp/actions/the_post.php
- kk-star-ratings/src/functions/autoload.php
- kk-star-ratings/src/functions/block.php
- kk-star-ratings/src/functions/block_5.3.4.php
- kk-star-ratings/src/functions/get_hof.php
- kk-star-ratings/src/functions/option.php
- kk-star-ratings/src/functions/post_meta.php
- kk-star-ratings/src/functions/view.php
Thành SEO AI đã sửa lỗi, các bạn có thể tải về bản fixed tại địa chỉ:
[https://thanhseoai.com/share/kk-star-ratings-5.4.10.5-fixed-tqt-vtdevs.zip]
Dành cho Dev
Vấn đề
Thông báo ngừng hỗ trợ (deprecation notice) như trên xuất hiện vì PHP 8.4 không còn chấp nhận cách khai báo tham số có thể nhận giá trị `null` một cách ngầm định. Trước phiên bản PHP 8.4, việc gán giá trị mặc định là `null` cho một tham số đã được chỉ định kiểu (ví dụ: `string $path = null`) sẽ tự động mở rộng kiểu dữ liệu đó để chấp nhận cả giá trị `null`. Hiện tại, PHP yêu cầu bạn phải khai báo điều này một cách tường minh; nếu không, mã nguồn sẽ gặp lỗi nghiêm trọng (fatal error) trong các phiên bản cao hơn.
Khi gặp thông báo lỗi này, nhiều khả năng bạn đang có một phương thức hoặc hàm với khai báo như sau:
function yourFunction(string $path = null) { … }
Cách xử lý
Để khắc phục, hãy cập nhật kiểu dữ liệu của tham số để thể hiện rõ rằng nó có thể nhận giá trị `null` bằng cách thêm tiền tố `?` hoặc sử dụng kiểu hợp nhất (union type – `string|null`).
Cách 1: Sử dụng tiền tố `?`
(Khuyên dùng cho các kiểu dữ liệu đơn lẻ)
function yourFunction(?string $path = null) { … }
Cách 2: Sử dụng kiểu hợp nhất (union type)
function yourFunction(string|null $path = null) { … }
Cách 3: Sửa lỗi tự động trên toàn bộ mã nguồn
Trường hợp mã nguồn website của bạn có quy mô lớn và xuất hiện nhiều cảnh báo dạng này, bạn có thể tự động hóa quá trình sửa đổi mã nguồn (refactoring) bằng cách sử dụng các công cụ như PHP-CS-Fixer hoặc Rector trên Github.
Hậu trường
#1
Case stydy vừa nêu xảy ra trên website https://n*h*r*.com mà tôi đang nhận SEO.
Ai đó có thể nói: “Lỗi PHP, lỗi plugin thì liên quan gì đến SEO AI?”
- Như khối u hay tế bào ung thư, một lỗi mã nguồn sẽ ảnh hưởng đến sức khỏe web, và có thể làm website một lúc nào đó shutdown hay die.
- Mọi lỗi, mọi điều bất thường hay vấn đề phát sinh để tồn tại lâu đều ảnh hưởng đến hiệu quả hoạt động của web, bao gồm hiệu quả SEO AI.
#2
Chủ web không biết những gì đã xảy ra trong case stydy nêu trên, và tôi không báo cáo, vì báo cáo chẳng để làm gì!
Nhưng qua đó thấy rằng: khi đã nhận một dự án SEO AI, có rất nhiều việc tôi làm, mà chủ web không hề hay biết.
Tôi (và tôi biết có nhiều người) làm việc, bên cạnh vì tiền, là vì đam mê và trách nhiệm nghề nghiệp của người có lương tâm.




