尝试用js实现了一个后台表单,因为篇幅有点儿长,准备分拆成一个js与一个css文件,用wordpress提供的函数更安全的引用。js文件内包含中文,以内部引用的方式插入的时候显示是正常的。经由wp_enqueue_script过滤之后,所有的中文都变为了乱码。只能用常规的方式引入js,再用wp_enqueue_style引入css了。
wp如何插入脚本
使用wp_enqueue_script()将可以js文件插入队列,函数的基本结构如下:
wp_enqueue_script( $handle, $src, $deps, $ver, $in_footer);
- $handle:脚本的名称;
- $src:脚本文件所在的位置;
- $deps:依赖的脚本数组,例如 jQuery;
- $ver:脚本的版本号;
- $in_footer:是一个布尔数(true / false),它允许我们将脚本放在 HTML 文档的页脚中,而不是放在 <head> 中,这样它就不会延迟加载 DOM 树。
导入js文件的实例:
wp_enqueue_script( 'script', get_template_directory_uri() . '/js/script.js', array ( 'jquery' ), 1.1, true);
wp如何插入样式
使用wp_enqueue_style() 将 css 文件插入队列,函数的基本结构如下:
wp_enqueue_style( $handle, $src, $deps, $ver, $media );
- $handle: 样式表名称;
- $src: 样式文件所在的位置,其余参数是可选的;
- $deps: 指的是此样式表是否依赖于另一个样式表。如果设置了此项,则除非首先加载其依赖的样式表,否则不会加载此样式表;
- $ver:版本号;
- $media:可以指定要加载此样式表的媒体类型,例如 ‘all’, ‘screen’, ‘print’ 或 ‘handheld’。
如果我们需要加载主题根目录中名为“CSS”的文件夹中的名为“slider.css”的样式表,可以使用如下代码:
wp_enqueue_style( 'slider', get_template_directory_uri() . '/css/slider.css',false,'1.1','all');
在 wordpress 站点中,同时激活的不只有你的主题,还会有许多其他插件。想要他们和谐地一起工作,主题和插件都需要使用标准的 wordpress 方法加载脚本和样式表,这可以确保网站保持高效运行且不存在兼容问题。向wordpress添加脚本和样式是一个相当简单的过程。wordpress官方提供的函数会创建一个将所有脚本和样式排入队列的函数。在排队脚本或样式表时,wordpress 会创建一个句柄和路径来查找文件及其可能具有的任何依赖项(如 jQuery),然后使用一个将插入脚本和样式表插入队列的钩子来添加自定义css和js文件。