在WordPress中,wp_enqueue_script()
和 wp_enqueue_style()
是两个非常重要的函数,它们用于在WordPress前端(即网站的前台)注册、排队和加载JavaScript脚本和CSS样式表。以下是这两个函数的基本使用方法:
wp_enqueue_script()
这个函数用于在WordPress前端加载JavaScript脚本。
function my_theme_enqueue_scripts() {
// 注册一个脚本
wp_register_script( 'my-custom-script', get_template_directory_uri() . '/js/my-script.js', array( 'jquery' ), '1.0.0', true );
// 排队加载一个脚本
wp_enqueue_script( 'my-custom-script' );
// 如果需要,你可以传递一些变量到JavaScript中
$translation_array = array(
'some_string' => __( 'Some string to translate', 'text-domain' ),
'a_number' => 1234,
);
wp_localize_script( 'my-custom-script', 'my_custom_script_vars', $translation_array );
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_scripts' );
参数说明:
$handle
: 脚本的唯一标识符。$src
: 脚本的URL。$deps
: 脚本依赖的其他脚本,例如jQuery。$ver
: 脚本版本号,用于缓存管理。$in_footer
: 是否在页面的底部加载脚本,默认为false
。
wp_enqueue_style()
这个函数用于在WordPress前端加载CSS样式表。
function my_theme_enqueue_styles() {
// 注册一个样式表
wp_register_style( 'my-custom-style', get_template_directory_uri() . '/css/my-style.css', array(), '1.0.0', 'all' );
// 排队加载一个样式表
wp_enqueue_style( 'my-custom-style' );
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
参数说明:
$handle
: 样式表的唯一标识符。$src
: 样式表的URL。$deps
: 样式表依赖的其他样式表。$ver
: 样式表版本号,用于缓存管理。$media
: 样式表应用的媒体类型,例如all
、screen
、print
等。
注意事项:
- 不要直接在主题中直接使用
<script>
或<link>
标签来加载资源,因为这会导致WordPress无法正确管理脚本和样式表的加载顺序和依赖关系。 - 总是在
wp_enqueue_scripts
钩子上注册和排队脚本和样式表。 - 使用
wp_register_script()
和wp_register_style()
来注册脚本和样式表,然后再使用wp_enqueue_script()
和wp_enqueue_style()
来排队它们。 - 如果脚本或样式表需要依赖其他脚本或样式表,确保在
$deps
参数中指定它们。
通过这种方式,你可以有效地管理WordPress前端资源,确保它们以正确的方式加载,并且不会与其他脚本或样式表发生冲突。