WordPress hadir dengan banyak skrip default yang dapat Anda gunakan untuk memberi daya pada tema dan plugin Anda. jQuery adalah skrip yang umum digunakan seperti TinyMCE. Tetapi bagaimana jika Anda ingin mengintegrasikan skrip jQuery Anda sendiri?

Kami baru-baru ini mendemonstrasikan cara menambahkan skrip jQuery dengan benar ke instalasi Anda. WordPress menggunakan mekanisme internal yang sama, yang berarti kita dapat menghapus atau bahkan mengganti skrip antrian dengan skrip kita sendiri.

Dalam tutorial ini, saya akan menunjukkan caranya unregister Skrip yang ada sehingga Anda dapat menambahkan skrip Anda sendiri. Kami juga akan memperkenalkan Anda dengan berbagai keadaan di mana Anda dapat melakukannya dan memberi tahu Anda mengapa beberapa orang berpikir bahwa menghapus skrip internal tidak bertanggung jawab.

Mengapa memodifikasi skrip internal: Kasus jQuery?

Ada berbagai skenario di mana Anda mungkin ingin mengubah skrip internal yang dimuat. Misalnya, WordPress saat ini menggunakan jQuery 1.11.3 secara default, namun versi terbaru sebenarnya adalah 1.12.3 atau 2.2.3. Jika Anda menulis aplikasi yang mengandalkan fungsionalitas jQuery tingkat lanjut, Anda mungkin perlu menggunakan versi skrip yang lebih baru.

Saya juga menghadapi situasi di mana plugin lama menyebabkan masalah dengan skrip yang sudah ketinggalan zaman. Dalam kasus ini, pelanggan mengandalkan plugin, tetapi skrip yang dimuat sebenarnya tidak digunakan. Kami pikir menghapusnya adalah opsi terbaik, tetapi alih-alih langsung memodifikasi kode plugin yang akan mencegah pembaruan di masa mendatang, kami memutuskan untuk menggunakan plugin baru untuk mengubah skrip yang dimuat.

Penting untuk dicatat bahwa meskipun ada kasus yang sah di mana Anda dapat menghapus dan mengubah skrip yang dimuat oleh inti WordPress dan plugin atau tema lainnya, Anda harus selalu berpikir dua kali dan melanjutkan dengan hati-hati.

Jika Anda memaksakan versi baru jQuery di . Anda situs jaringan, misalnya, dapat menyebabkan masalah kompatibilitas yang tidak terduga. Anda harus selalu menguji WordPress secara lokal jika memungkinkan, dan hindari memodifikasi/menghapus skrip kecuali benar-benar diperlukan.

Haruskah kita menghapus kode internal dari WordPress

Cara mengedit skrip

Berkat keajaiban WordPress, Anda dapat memodifikasi skrip apa pun yang ada di dalam tema Anda atau bahkan membuat plugin untuk melakukannya untuk Anda. Ini berarti Anda tidak perlu (dan tidak akan!) Mengubah kode asli yang memuat skrip yang menyinggung. Biarkan saya memberi Anda beberapa contoh.

Katakanlah tema Anda menggunakan skrip yang ingin Anda hapus atau ganti. Dalam hal ini, Anda dapat membuat tema anak dan memuat kode yang diperlukan.

Jika Anda ingin mengubah skrip yang disertakan dalam plugin, Anda dapat membuat perubahan yang diperlukan pada tema anak Anda atau di plugin baru. Bergantung pada ruang lingkup proyek, saya merekomendasikan membuat plugin khusus untuk memodifikasi skrip plugin lain.

Jika Anda ingin mengedit skrip WordPress dasar, yang terbaik adalah melakukannya di produk yang Anda tulis. Jika Anda bekerja dengan sebuah plugin Anda harus melakukannya di atasnya, jika itu sebuah tema, Anda harus melakukannya pada file functions.php.

The "pencabutan pendaftaran" dari Script

Jika Anda belum melihat tutorial sebelumnya tentang cara menambahkan skrip dengan benar di WordPress, Anda dapat melakukannya sekarang dan kembali. Kami telah melihat bahwa metode menambahkan skrip ke WordPress adalah dengan mendaftarkannya. Penghapusan mereka, tentu saja, merupakan proses sebaliknya, yang berarti "pencabutan pendaftaran" atau lebih tepatnya pencabutan pendaftaran. Itu dilakukan menggunakan fungsi wp_deregister_script () seperti ini:

wp_deregister_script ('jquery');

Satu-satunya parameter yang Anda butuhkan di sini adalah namespace skrip. Namespace diberikan ketika skrip disimpan dan Anda dapat membaca di posting saya tentang menambahkan jQuery untuk WordPress untuk informasi lebih lanjut.

Menggunakan kode di atas akan sepenuhnya menghapus skrip jQuery.

Mengganti Script

Jika Anda ingin mengganti skrip, tidak cukup hanya menyimpannya dengan parameter baru (ini akan diabaikan). Anda harus membatalkan registrasi dan mendaftar ulang skrip. Ini adalah contoh cepat:

function my_enqueued_assets () {wp_deregister_script ('jquery'); wp_enqueue_script ('script-name', '//code.jquery.com/jquery-2.2.3.min.js', array (), '2.2.3'); } add_action ('wp_enqueue_scripts', 'my_enqueued_assets');

Temukan skrip yang disimpan

Jika Anda mencari semua skrip yang disimpan WordPress, Anda beruntung. Lihatlah dokumentasi wp_enqueue_scripts dan Anda akan menemukan tabel di ujung jari Anda.

Namun, menemukan skrip yang disimpan oleh plugin sedikit lebih sulit. Anda dapat membuat daftar semua skrip dalam antrian dengan membuangnya isi dari variabel $wp_scripts.

global $ wp_scripts; echo ' ';
var_dump ($ wp_scripts);
echo ' ';

Metode lain yang saya gunakan adalah mencari wp_enqueue_scripts di direktori plugin saya. Ini memungkinkan saya untuk melihat plugin mana yang bertanggung jawab atas skrip mana di situs saya.

Mengapa Script Penggantian tidak selalu merupakan ide yang baik

Sementara beberapa pengembang tema dan plugin mungkin merasa benar-benar perlu untuk memuat skrip mereka sendiri, dan terutama versi jQuery yang berbeda, ada beberapa kontroversi di komunitas WordPress mengenai apakah benar-benar layak untuk memuatnya. membuat.

Dengan fakta bahwa WordPress memuat jQuery dalam mode noConflict, sangat kecil kemungkinan akan terjadi konflik, dan oleh karena itu tema tidak boleh mengubah perilaku WordPress, dan terutama WordPress memperbarui versi yang disematkan jQuery secara teratur.

Untuk meringkas

Saat menghapus atau mengganti skrip, sesuatu yang tidak boleh Anda lakukan setiap hari, penting untuk mengetahui cara melakukannya dengan benar sehingga ketika Anda dihadapkan pada situasi yang diperlukan, Anda dapat melakukannya tanpa rasa khawatir dan tanpa “rusak” blog Anda.

Dengan berhenti berlangganan skrip melalui plugin khusus, Anda memastikan Anda tidak mengubah kode sumber WordPress atau tema yang bukan penulisnya, yang memungkinkan Anda menjaga kode Anda tetap aman selama pembaruan.