Nội dung bài viết
Thời gian gần đây có khá nhiều người dùng WordPress bị lỗi liên quan đến Widget khi nâng cấp Core WordPress lên bản 5.8 (08/2021). Nguyên nhân lỗi widget chủ yếu đến từ việc tương thích giữa Core WordPress 5.8 với cấu trúc mã nguồn (Plugin/Theme..) của bạn.
Cách nhận biết lỗi liên quan đến widget trên WordPress
Khi bạn truy cập vào mục Appearance >> Widget, nếu bạn thấy xuất hiện các thông báo như bên dưới nghĩa là Widget của bạn đang bị lỗi.
- Block “” bị lỗi và có thể không hoạt động bình thường. Kiểm tra bằng công cụ lập trình để biết thêm chi tiết.
- The “” block was affected by errors and may not function properly. Check the developer tools for more details.
- File error_log của website sẽ có thông báo log tựa như bên dưới.
Notice: wp_enqueue_script() wurde <strong>fehlerhaft aufgerufen</strong>. "wp-editor" script should not be enqueued together with the new widgets editor (wp-edit-widgets or wp-customize-widgets). Weitere Informationen: <a href="https://wordpress.org/support/article/debugging-in-wordpress/">Debugging in WordPress (engl.)</a> (Diese Meldung wurde in Version 5.8.0 hinzugefügt.) in /var/www/html/wp-includes/functions.php on line 5535
Hướng dẫn xử lý
Cách xử lý bây giờ là chúng ta sẽ thực hiện chuyển Wiget về giao diện cổ điển (Classic) để sử dụng. Các bạn có thể áp dụng 1 trong 2 cách dưới đây:
Cách 1: Sử dụng Code
Cách này thì bạn cần sử dụng đoạn Code bên dưới, và dán vào File functions.php
của Theme đang sử dụng tại đường dẫn: wp-content/themes/my-theme/
### Su dung Widget Classic ### add_filter( 'gutenberg_use_widgets_block_editor', '__return_false' ); add_filter( 'use_widgets_block_editor', '__return_false' );
Cách 2: Sử dụng Plugin
Cách này thì đơn giản hơn, bạn chỉ cần cài đặt và kích hoạt Plugin Classic Widgets là xong nhé.
Chúc các bạn thực hiện thành công.!