Jadi saya menggunakan Starkers untuk mendasarkan tema WP saya berikutnya dan saya telah mengalami masalah kecil, saya memasukkan versi jQuery saya sendiri dalam header.php
file tersebut tetapi ketika memeriksa situs saya menggunakan Firebug saya perhatikan jquery sedang diunduh dua kali, saya melakukan sedikit penggalian dan memperhatikan bahwa saya tidak hanya menyertakan file tetapi juga wp_head()
fungsinya.
Dalam mencoba untuk memperbaiki masalah saya perhatikan komentar di file header, yang berasal dari tema Twenty Ten:
/* Always have wp_head() just before the closing </head>
* tag of your theme, or you will break many plugins, which
* generally use this hook to add elements to <head>, such
* as styles, scripts, and meta tags
*/
Jadi inilah masalah saya, saya mendapat kesan bahwa file jQuery harus diatur sebelum file lain yang ingin menggunakannya dan itu wp_head()
harus menjadi hal terakhir dalam <head>
elemen, saya sedikit bingung sekarang karena saya bertanya-tanya apakah seharusnya Saya menempatkan wp_head()
di bagian atas sehingga file WP termasuk jQuery akan digunakan untuk semua plugin saya, meskipun ia mengatakan tidak melakukannya.
Saya memang mengomentari baris jQuery dalam wp_head()
fungsi tapi itu diperlukan untuk halaman admin jadi saya harus mengembalikannya.
Saya juga ingin menggunakan (setidaknya bereksperimen) dengan menggunakan jQuery versi Google CDN, tetapi tidak ingin memasukkannya dua kali!
Saya harap Anda mengerti apa yang saya coba jelaskan, setiap saran tentang bagaimana saya bisa menyelesaikan masalah ini akan sangat dihargai. Saya juga menghargai saran apa pun tentang cara Anda menangani file JavaScript dengan file header.
Terima kasih!
sumber
Jawaban:
Dari kata-kata pertanyaan Anda, Anda harus menambahkan skrip dengan menulis
<script>
tag di templat Anda. Tambahkan skrip Anda sendiriwp_enqueue_script()
di dalam templat Andafunctions.php
, atur ketergantungan pada jQuery dengan tepat, danwp_head()
akan menambahkan skrip untuk Anda.Lihat halaman codex untuk info lebih lanjut.
sumber
<script>
tag, ini adalah alternatif yang saya cari, terima kasih banyak! :-)'template_redirect'
bukan'init'
.is_admin()
.get_header()
, melakukannya difunctions.php
enqueue pada setiap halaman yang mungkin tidak diperlukan. Jika saya memiliki yang global, saya memintaheader.php
sebelumnyawp_head()
disebut. Dengan cara itu enqueues adalah di mana Anda akan mengharapkan mereka berada di<head>
Saya sarankan melihat 5 Tips untuk menggunakan jQuery dengan WordPress . Antara lain, ini menunjukkan kode yang diperlukan untuk memuat jQuery dari perpustakaan Google:
Anda juga dapat memeriksa plugin Use Google Libraries .
sumber
template_redirect
alih-alihinit
.Meskipun @tnorthcutt benar bahwa Anda harus dequue jquery asli WP dengan benar jika Anda ingin memuat sendiri, Anda yakin akan mengalami masalah ketika Anda memuat versi jquery berbeda yang menggunakan WP core. Baik inti dan plugin mengandalkannya ada di sana. Jadi, jika Anda tidak memperbarui tema Anda dengan jquery terbaru setiap kali WP diperbarui, situs Anda mungkin rusak.
Kode berikut akan memastikan tema Anda selalu memuat versi jquery yang benar, dengan terlebih dahulu mencari versi WP yang digunakan dan kemudian memuat yang dari Google:
sumber