Khi thiết kế theme mới, bạn không tránh khỏi lỗi xung đột jquery, cái mà thông báo lỗi mầu đỏ:
$ is not defined
Uncaught TypeError: undefined is not a function.
Fix xung đột jquery
Bạn nhấn vào liên kết tại dòng có lỗi, sẽ biết chính xác lỗi ở đâu. Nôm na là lỗi khi gọi hàm của jquery, kiểu như thế này.
$(xxx).methodName(..)
Vậy phải làm sao? Giải pháp đầu tiên, bạn thử thêm hàm này vào trước dòng báo lỗi:
jQuery.noConflict();
Nếu không được, hãy thử thay thế thư viện file jquery khác. Các bạn có thể link trực tiếp vào host của thằng jquery hoặc thằng google mà chơi cũng được.
http://code.jquery.com/jquery-1.11.1.min.js
http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
Muốn chèn phiên bản khác bạn có thể vào trang chủ của nó: http://jquery.com/download/
Nếu cách trên vẫn không ổn, thì thử cách này. Trước hết chạy thử các file html được rip về xem các tính năng javascript và jquery nó hoạt động không. Nếu hoạt động tốt thì là do thừa jquery trong website, mặc định wordpress load jquery có trong gói wordpress.org. Để xóa jquery mặc định trong wordpress, chúng ta chèn thêm đoạn sau vào functions.php
Loại bỏ click tặc
Click Ảo Quá Nhiều Làm Tiêu Hao Ngân Sách Quảng Cáo -Giải Pháp Của Bạn- Xem Ngay. Uy Tín Chuyên Nghiệp. Hỗ Trợ Cả Thứ 7 Chủ Nhật. Miễn Phí Sử Dụng 7 ngày. Bảo Mật Tuyệt Đối.

function myinit(){ if(!is_admin()) wp_deregister_script('jquery'); } add_action('init','myinit');
Nhớ là chỉ xóa jquery ở frontend, đừng xóa ở admin.
Và có thể thay thế file jquery khác.
add_action('init','myinit'); function myinit(){ // Drop this in functions.php or your theme if( !is_admin()){ wp_deregister_script('jquery'); wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"), false, '1.3.2'); wp_enqueue_script('jquery'); } }
Chúc bạn thành công!
Trả lời