Saya sudah mencoba untuk memasukkan efek jquery ui (lebih khusus efek goyang) pada tema wordpress saya. Sejauh ini, saya hanya bisa memasukkan skrip jQuery, tapi saya benar-benar tidak tahu di mana harus menempatkan skrip ui dan bagaimana membuat enqueue.
Ini adalah kode yang saya miliki. Jelas tidak bekerja:
<?php wp_enqueue_script("jquery"); ?>
<?php wp_enqueue_script("jquery-ui-core"); ?>
<?php wp_head(); ?>
<link rel="stylesheet" type="text/css" href="<?php bloginfo('stylesheet_url'); ?>" />
<script type="text/javascript">
var $j = jQuery.noConflict();
$j(document).ready(function() {
$j("#manita-imagen").mouseover(function(){
//$j(this).animate({ opacity: "hide" })
// alert('asd');
$j(this).effect("shake", { times:3 }, 300);
});
});
</script>
Terima kasih atas bantuan Anda!
jquery
wp-enqueue-script
dabito
sumber
sumber
Jawaban:
Meskipun WordPress memang menyertakan pustaka UI jQuery, itu tidak menyertakan pustaka UI / Efek. Perpustakaan itu terpisah dan berdiri sendiri. Anda harus menyertakan salinan file effects.core.js dan membuatnya secara terpisah.
Perhatikan bahwa Anda harus menamainya jquery-effect-core saat en-antri, untuk penamaan konsistensi.
Anda dapat memasukkannya seperti ini:
Sunting : Jawaban ini ditulis sebelum WordPress 3.3, yang sekarang menyertakan berbagai pustaka efek sebagai bagian dari inti. Anda cukup membuat bagian-bagian pustaka efek yang perlu Anda gunakan sekarang.
Daftar siput untuk file-file ini dapat ditemukan di wp-include / script-loader.php, tetapi siput inti adalah jquery-effect-core.
sumber
wp_enqueue_script( 'jquery-effects-fade' );
@dabito,
Anda tidak memuat skrip Anda dengan benar ... Jangan panggil
wp_enqueue_script()
di dalam file templat tema Anda (sepertinya iniheader.php
). Anda perlu memanggil fungsi ini dari pengait terpisah.Dalam
functions.php
file tema Anda , tempatkan kode berikut:Jika kedua skrip terdaftar dengan benar, ini akan memuatnya dengan baik (dengan menambahkan
<script />
tag yang sesuai di header. Kemudian kode JavaScript Anda yang lain harus berfungsi.Jika Anda ingin menambahkan skrip ke sisi admin , tambahkan tindakan Anda
admin_enqueue_scripts
sebagai gantinya.sumber
wp_enqueue_scripts
jelas merupakan cara yang lebih baik untuk pergi dan menghindari memerlukan pemeriksaan tambahanis_admin()
.Anda juga dapat membuat seluruh UI jQuery secara langsung dari Google. Beginilah cara saya melakukannya:
Dan karena jQuery terdaftar sebagai dependensi untuk jQuery UI, Anda tidak perlu membuatnya secara manual. WordPress akan melakukannya secara otomatis untuk Anda.
sumber
Tampaknya tidak ada beban default untuk pustaka jQuery ini (daftar lengkap di sini ) sehingga Anda mungkin harus mendaftarkan skrip sebelum Anda membuatnya terlebih dahulu.
sumber
Hanya sedikit tips. Saat Anda membuat skrip, skrip untuk seluruh situs termasuk panel admin. Jika Anda tidak ingin skrip di panel admin, Anda hanya dapat memasukkannya ke situs di frontend.
sumber
wp_enqueue_scripts
tindakan hanya untuk ujung depan. Terima kasih :)Semua jawaban di sini, sementara mereka bekerja, secara teknis salah.
Cara yang benar untuk memasukkan jquery-ui dan perpustakaan lain adalah dengan memasukkannya sebagai dependensi skrip Anda sendiri.
Ini penting, karena alat kinerja dapat memeriksa dependensi ini untuk mengubah urutan pemuatan skrip Anda untuk mengoptimalkan situs.
Jadi, jika Anda ingin menggunakan jquery dan jquery-ui, buat file skrip .js Anda sendiri dan enqueue seperti ini, dengan dependensi yang tercantum - tidak perlu perintah enqueue terpisah untuk setiap perpustakaan yang Anda gunakan:
Anda dapat menemukan daftar semua skrip yang tersedia untuk ditambahkan sebagai dependensi di sini: https://developer.wordpress.org/reference/functions/wp_enqueue_script/
sumber