将单个脚本应用于特定页面的最佳实践是什么?当我尝试应用整个页面的脚本时,它与其他插件有问题。有经验法则吗?
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
(function() {
$(\'html\').addClass(\'js\');
var contactForm = {
container: $(\'#contact\'),
config: {
effect: \'slideToggle\',
speed: 500
},
init: function(config) {
$.extend(this.config, config);
$(\'<button></button>\', {
text: \'Contact Me\'
})
.insertAfter( \'article:first\' )
.on( \'click\', this.show );
},
show: function() {
var cf = contactForm,
container = cf.container,
config = cf.config;
if ( container.is(\':hidden\') ) {
contactForm.close.call(container);
container[config.effect](config.speed);
}
},
close: function() {
var $this = $(this), // #contact
config = contactForm.config;
if ( $this.find(\'span.close\').length ) return;
$(\'<span class=close>X</span>\')
.prependTo(this)
.on(\'click\', function() {
// this = span
$this[config.effect](config.speed);
})
}
};
contactForm.init({
// effect: \'fadeToggle\',
speed: 300
});
})();
</script>
SO网友:ferne97
我通常注册所有需要使用的脚本wp_register_script
然后使用wp_enqueue_script
在只需要在特定页面上加载的脚本的条件中。
functions.php
function enqueue_scripts() {
wp_register_script( \'global\', get_template_directory_uri() . \'/lib/js/global.js\', array( \'jquery\' ), \'1.0\', true );
wp_register_script( \'example\', get_template_directory_uri() . \'/lib/js/example.js\', array( \'jquery\' ), \'1.0\', true );
wp_enqueue_script( \'global\' );
if ( is_page( 2 ) ) { // example page
wp_enqueue_script( \'example\' );
}
}
add_action( \'wp_enqueue_scripts\', \'enqueue_scripts\' );