Saya memiliki cuplikan javascript yang ingin saya masukkan ke bagian bawah halaman. Ini kode pelacakan, katakanlah mirip dengan Google analytics. Itu tidak memiliki dependensi, itu potongan mandiri.
Saya bisa melakukan sesuatu seperti ini
function render_tracking_code(){
wp_enqueue_script( 'depends-js', 'https://rdiv.com/dummy.js', array(), '0.01', true );
wp_add_inline_script( 'depends-js', 'aWholeBunchOfJavascriptCode' );
}
add_action( 'wp_enqueue_scripts', 'render_tracking_code' );
Tampaknya sedikit bodoh (dummy.js adalah file kosong), tetapi berfungsi. Apakah ada cara untuk melewati ketergantungan?
sumber
wp_add_inline_script()
tanpa ketergantungan masih sedang dipertimbangkan untuk 4.9.9, itu tidak berarti bahwa itu akan ditambahkan. Jadi sebaiknya tunggu konfirmasi sebelum menggunakan fitur ini.Pembaruan: WordPress menambahkan dukungan untuk menambahkan skrip dan gaya sebaris tanpa ketergantungan pada v5.0. Lihat jawaban @ birgire untuk implementasi.
Saat menggunakan
wp_add_inline_script()
,WP_Scripts::print_inline_script()
pada akhirnya akan digunakan untuk menghasilkan skrip inline. Secara desain,print_inline_script()
membutuhkan ketergantungan yang valid$handle
,.Karena tidak ada ketergantungan dalam hal ini,
wp_add_inline_script()
bukan alat yang tepat untuk pekerjaan itu. Alih-alih membuat file ketergantungan palsu (dan permintaan HTTP tambahan yang tidak diinginkan), gunakanwp_head
atauwp_footer
untuk menghasilkan skrip inline:Secara umum, JavaScript harus ditambahkan ke
.js
file dan digunakanwp_enqueue_script()
diwp_enqueue_scripts
hook. Data dapat dibuat tersedia untuk skrip menggunakanwp_localize_script()
. Kadang-kadang mungkin masih perlu menambahkan skrip inline.sumber
Salah satu cara untuk melakukan ini adalah membuat fungsi yang menggema skrip Anda di dalam
<script>
tag, dan mengaitkannya kewp_print_footer_scripts
tindakan. Anda harus berhati-hati untuk melepaskan diri dari apa pun yang tidak Anda kontrol dengan ketat, tetapi ini metode yang umumnya aman dan mudah.Sebagai contoh:
sumber