Test Plugin Theme WordPress 7.1 Compatibility: Hướng Dẫn A-Z Trước Ngày Release 19/8

Test tương thích Plugin Theme WordPress 7.1

WordPress 7.1 ra mắt ngày 19/8, chỉ còn vài ngày nữa. Nếu bạn đang chạy plugin hay theme tự code, đây là lúc test compatibility trước khi bản cập nhật tự động xuất hiện trên mọi site. Mình sẽ hướng dẫn từng bước từ A đến Z.

WordPress 7.1 có gì thay đổi mà cần test trước?

Test plugin theme WordPress 7.1 compatibility

WordPress 7.1 thay đổi hơn 1.480 file với gần 88.000 dòng code mới. Đáng chú ý nhất là editor luôn chạy trong iframe, SVG Icon API mới, responsive block styles, và interactive states (hover/focus/active). Tổng cộng có 20 hook mới, 310 Core Trac tickets đóng, và hơn 600 Gutenberg enhancements. Nếu plugin của bạn can thiệp vào editor, media library, hoặc admin UI, rủi ro vỡ là rất cao.

Cách tạo môi trường test WordPress 7.1 nhanh nhất

Nhanh nhất là dùng WordPress Playground, chạy trực tiếp trên trình duyệt tại playground.wordpress.net không cần cài đặt. Bạn chỉ cần chọn PHP 8.0+, WordPress version “beta”, và bắt đầu test ngay. Cách thứ hai là cài plugin WordPress Beta Tester trên staging site, chuyển channel sang “Bleeding Edge”, sau đó update core. Không bao giờ test trên site production.

Các điểm breaking changes quan trọng cần kiểm tra

Mình đã tổng hợp 5 điểm quan trọng nhất mà bất kỳ developer nào cũng phải kiểm tra:

1. Editor luôn chạy trong iframe (Enforced Iframed Editor)

Từ 7.1, post editor luôn bọc trong iframe. Nếu plugin của bạn inject JavaScript vào editor bằng wp_enqueue_script mà không khai báo đúng scope, script sẽ không chạy được bên trong iframe. Bạn cần kiểm tra xem plugin có dùng window.parent hay không, và đảm bảo các style cũng được enqueue cho iframe context.

// Cách fix: khai báo script cho editor iframe
function my_plugin_editor_assets() {
    wp_enqueue_script(
        'my-plugin-editor',
        plugins_url('js/editor.js', __FILE__),
        array('wp-element'),
        '1.0.0',
        true
    );
}
add_action('enqueue_block_editor_assets', 'my_plugin_editor_assets');

2. SVG Icon API thay thế dashicons

WordPress 7.1 giới thiệu SVG Icon API chính thức. Nếu plugin đăng ký icon cho admin menu bằng dashicons cũ, vẫn hoạt động bình thường. Nhưng nếu bạn muốn dùng SVG icon mới, cần đăng ký qua API:

// Đăng ký SVG icon mới cho plugin
function my_plugin_register_icon() {
    wp_register_svg_icon(
        'my-plugin-icon',
        '<svg viewBox="0 0 24 24"><path d="M12 2L2 7l10 5 10-5-10-5z"/></svg>'
    );
}
add_action('init', 'my_plugin_register_icon');

3. Responsive block styles và pseudo states

7.1 cho phép style block theo từng breakpoint (desktop, tablet, mobile) và pseudo states (hover, focus, active) trực tiếp trong editor. Nếu theme của bạn định nghĩa style qua theme.json, cần kiểm tra xem các property mới có xung đột không. Đặc biệt, theme.json giờ hỗ trợ thuộc tính states cho block styles.

4. Abilities API cập nhật

Abilities API (giới thiệu từ 7.0) được cập nhật đáng kể trong 7.1. Nếu plugin đăng ký abilities cho AI agents, cần review lại vì interface đã thay đổi. Kiểm tra phương thức register_ability() và đảm bảo các capability check vẫn đúng.

5. Admin Bar persistent trong editor

Admin Bar giờ luôn hiển thị khi đang trong editor. Plugin nào ẩn admin bar bằng CSS display: none trên #wpadminbar có thể gây xung đột layout. Kiểm tra z-index và positioning của các overlay, modal, hoặc sidebar mà plugin tạo ra.

Checklist test plugin WordPress 7.1 chi tiết

Mình đã lập sẵn checklist từng bước, bạn chỉ cần làm theo:

Bước 1: Tạo staging site chạy WordPress 7.1 RC2 bằng Beta Tester plugin hoặc Playground.
Bước 2: Kích hoạt từng plugin, kiểm tra PHP warnings/notices bằng WP_DEBUG_LOG = true.
Bước 3: Mở editor, tạo post mới, thêm từng block type mà plugin cung cấp.
Bước 4: Test trên cả Desktop, Tablet, Mobile preview để kiểm responsive styles.
Bước 5: Kiểm tra media library, upload ảnh, đặc biệt HEIC format.
Bước 6: Test REST API endpoints mà plugin đăng ký.
Bước 7: Kiểm tra console browser (F12) cho JavaScript errors trong editor iframe.
Bước 8: So sánh query database trước và sau khi kích hoạt plugin.

Cách kích hoạt WP_DEBUG để bắt lỗi chi tiết

Trong file wp-config.php trên staging site, thêm các dòng sau để ghi log mọi lỗi:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);

Sau khi test xong, kiểm tra file wp-content/debug.log. Mọi deprecated function, warning, hay notice sẽ xuất hiện ở đây với stack trace đầy đủ. Đây là cách nhanh nhất để phát hiện code không tương thích với 7.1.

Test theme compatibility WordPress 7.1 như thế nào?

Theme cần test nhiều hơn plugin vì ảnh hưởng trực tiếp đến frontend. Đầu tiên, kích hoạt theme trên staging chạy 7.1 RC2. Thứ hai, kiểm tra Global Styles trong Site Editor, đặc biệt nếu theme dùng theme.json version 3. Thứ ba, test block patterns mới như Tabs và Playlist block để xem render đúng không. Cuối cùng, kiểm tra responsive breakpoints tùy chỉnh trong theme.json:

{
  "settings": {
    "layout": {
      "customBreakpoints": {
        "mobile": 480,
        "tablet": 960,
        "desktop": 1280
      }
    }
  }
}

Phát hiện deprecated functions tự động bằng Query Monitor

Cài plugin Query Monitor (miễn phí trên WordPress.org) trên staging site. Plugin này sẽ hiển thị mọi deprecated function, slow query, và PHP error ngay trên admin bar. Khi chạy test WordPress 7.1, Query Monitor sẽ cảnh báo nếu plugin hay theme dùng function đã bị loại bỏ. Đây là công cụ mình luôn cài đầu tiên khi test bất kỳ bản cập nhật lớn nào.

Các lỗi phổ biến khi test WordPress 7.1 và cách fix

Dựa trên kinh nghiệm test từ Beta 1 đến RC2, mình thấy các lỗi phổ biến nhất là: JavaScript không chạy trong editor iframe (chiếm 60% lỗi), style bị lệch do admin bar persistent (20%), và REST API endpoint thay đổi response format (10%). Cách fix nhanh nhất cho lỗi iframe là chuyển từ admin_enqueue_scripts sang enqueue_block_editor_assets. Với admin bar, thêm CSS body { padding-top: 0 !important; } chỉ trong editor context.

Nếu plugin vỡ sau khi cập nhật WordPress 7.1 thì sao?

Trường hợp xấu nhất là site production đã auto-update và plugin vỡ. Bước đầu tiên, truy cập hosting panel, mở File Manager hoặc SSH, đổi tên thư mục plugin trong wp-content/plugins/ để vô hiệu hóa. Thứ hai, nếu không vào được admin, thêm dòng define('WP_AUTO_UPDATE_CORE', false); vào wp-config.php để dừng auto-update. Thứ ba, liên hệ plugin developer qua WordPress.org support forum, gửi kèm debug.log để họ fix nhanh hơn.

Lịch trình release WordPress 7.1 chính thức

RC2 đã ra ngày 12/8. Bản chính thức ra ngày 19/8, trùng với ngày cuối của WordCamp US 2026 tại Phoenix. Sau khi release, WordPress sẽ tự động cập nhật cho các site đang chạy 7.0.x trong vòng 24-48 giờ. Nếu bạn có staging site, hãy test ngay hôm nay. Sáu ngày là đủ thời gian để phát hiện và fix lỗi nghiêm trọng.

Kết luận

Test WordPress 7.1 trước khi release không mất nhiều thời gian nếu bạn có quy trình đúng. Tạo staging, cài Beta Tester, kích hoạt Query Monitor, và chạy qua checklist 8 bước mình hướng dẫn ở trên. Đầu tư 2 giờ test hôm nay sẽ tiết kiệm hàng giờ fix lỗi khi 7.1 auto-update trên production ngày 19/8.

Thanh Tùng

Mình là Thanh Tùng. Bạn bè gọi mình là "bác sĩ máy tính" vì hễ máy nào có vấn đề là mình muốn mò vào xem sao. Mình viết hướng dẫn theo cách mà mình mong người khác đã viết cho mình ngày xưa — từng bước rõ ràng, không bỏ sót, và nói luôn cái gì hay bị lỗi. Ngoài giờ làm mình chơi guitar, nuôi mèo, và có một con VPS riêng dành riêng cho việc cài thử đủ thứ linh tinh.

Xem tất cả bài viết →

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *