Chào các bạn, sau khi giải quyết vấn đề ngoặc thẳng – ngoặc cong thì còn một vấn đề nữa khi sử dụng tính năng thay thế các script bằng shortcode [kdn-script] đó là nếu script inline chứa các dòng mới (new lines) thì mỗi dòng mới sẽ tự động chèn thêm thẻ <br/>. Như thế này:
Trong backend:
Nhưng khi ra bên ngoài frontend thì như này:
Và tất nhiên là script này đã bị lỗi và không hoạt động.
Để ngăn WordPress tự động chèn thẻ <br/> vào các dòng mới thì bạn có thể đặt code sau vào file functions.php trong theme mà bạn đang kích hoạt:
<?php remove_filter('the_content', 'wpautop'); add_filter('the_content', 'shortcode_unautop', 100); ?>
Sau đó, quay lại frontend và kiểm tra kết quả:
Như vậy script này đã đúng và chạy bình thường. Tuy nhiên, việc cho phép chạy script trong bài viết sẽ tiềm ẩn nhiều nguy cơ bảo mật, vì vậy bạn cần phải nắm rõ được nội dung đầu vào là gì để tránh những rủi ro sau này.
Nếu bạn không muốn chỉnh sửa file functions.php thì có thể thử với các plugin sau: Từ khóa: wpautop
Chúc bạn thành công!