快速掌握WordPress中加载JavaScript脚本的方法


Posted in Javascript onDecember 17, 2015

在 WordPress 中加载脚本(为 CSS 和 JS,下同)文件,大多数人的做法是直接在 header.php 文件中添加 link 标签,或者把 link 标签通过 wp_head 钩子直接添加到 head 标签里,这种做法是不符合官方规范的。

标准的脚本加载方式应该是使用 WordPress 官方提供的函数(后边会说),统一标准有几个好处,首先就是更加安全和利于管理,其次是更加的方便快捷,而且不仅主题能挂载脚本,插件也可以,并且还能管理脚本,并且调整挂载顺序和位置和其它内容。

在哪个钩子加载?

在调用加载脚本函数之前,我们首先要确定函数在哪个钩子处执行,有四个常用的脚本加载钩子,分别是 wp_enqueue_scripts(在前台加载)、admin_enqueue_scripts(在后台加载)、login_enqueue_scripts(在登录页加载)和 init(全局加载)。

最常用的应该是 wp_enqueue_scripts 了,挂载到这上面,脚本只在前台加载。

加载 JavaScript 脚本

比如说我想在前台加载一个 JS,是主题根目录 JS 文件夹的 themes.js 文件。首先需要使用 wp_register_script() 函数把 JS 添加到脚本库里边(注册脚本),然后再使用 wp_enqueue_script() 函数挂载脚本。

function Bing_enqueue_scripts(){
  wp_register_script( 'themes_js', get_bloginfo( 'template_directory' ) . '/js/themes_js.js' );//注册 ID 为 themes_js 的 JS 脚本
  wp_enqueue_script( 'themes_js' );//挂载脚本
}
add_action( 'wp_enqueue_scripts', 'Bing_enqueue_scripts' );

加载 CSS 脚本

function Bing_enqueue_scripts(){
  wp_register_style( 'style', get_bloginfo( 'template_directory' ) . '/style.css' );
  wp_enqueue_style( 'style' );
}
add_action( 'wp_enqueue_scripts', 'Bing_enqueue_scripts' );

小结

本文只是非常简单的讲解了怎么加载脚本,合理的利用脚本排队机制,可以让程序变得灵活,也可以加快效率。

Javascript 相关文章推荐
jquery.boxy插件的iframe扩展代码
Jul 02 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
Nov 18 Javascript
JavaScript淡入淡出渐变简单实例
Aug 06 Javascript
JavaScript 节流函数 Throttle 详解
Jul 04 Javascript
servlet+jquery实现文件上传进度条示例代码
Jan 25 Javascript
Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能
Apr 28 Javascript
解决vue2.0路由跳转未匹配相应用路由避免出现空白页面的问题
Aug 24 Javascript
JS中注入eval, Function等系统函数截获动态代码
Apr 03 Javascript
vue中input的v-model清空操作
Sep 06 Javascript
layer.open组件获取弹出层页面变量、函数的实例
Sep 25 Javascript
js实现烟花特效
Mar 02 Javascript
js 压缩图片的示例(只缩小体积,不更改图片尺寸)
Oct 21 Javascript
JSONObject使用方法详解
Dec 17 #Javascript
JS实现alert中显示换行的方法
Dec 17 #Javascript
JavaScript中Function函数与Object对象的关系
Dec 17 #Javascript
jQuery实现进度条效果代码
Dec 17 #Javascript
JavaScript创建对象的方式小结(4种方式)
Dec 17 #Javascript
javascript日期格式化方法小结
Dec 17 #Javascript
javascript中Date format(js日期格式化)方法小结
Dec 17 #Javascript
You might like
迅雷下载《中学科技》怀旧期刊下载
2021/02/27 无线电
PHP has encountered an Access Violation
2007/01/15 PHP
smarty模板嵌套之include与fetch性能测试
2010/12/05 PHP
PHP DB 数据库连接类定义与用法示例
2019/03/11 PHP
PHPstorm激活码2020年5月13日亲测有效
2020/09/17 PHP
jQuery登陆判断简单实现代码
2013/04/21 Javascript
js动态调用css属性的小规律及实例说明
2013/12/28 Javascript
JS实现让网页背景图片斜向移动的方法
2015/02/25 Javascript
js+cookies实现悬浮购物车的方法
2015/05/25 Javascript
js实现异步循环实现代码
2016/02/16 Javascript
聊一聊JavaScript作用域和作用域链
2016/05/03 Javascript
AngularJS 视图详解及示例代码
2016/08/17 Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
2016/11/10 Javascript
JavaScript插入排序算法原理与实现方法示例
2018/08/06 Javascript
JS的Ajax与后端交互数据的实例
2018/08/08 Javascript
解决vue同一slot在组件中渲染多次的问题
2018/09/06 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
django将图片上传数据库后在前端显式的方法
2018/05/25 Python
python语音识别实践之百度语音API
2018/08/30 Python
Python+OpenCV图片局部区域像素值处理改进版详解
2019/01/23 Python
在pycharm中配置Anaconda以及pip源配置详解
2019/09/09 Python
python实现的按要求生成手机号功能示例
2019/10/08 Python
Django基于客户端下载文件实现方法
2020/04/21 Python
Python如何定义有可选参数的元类
2020/07/31 Python
Python使用grequests并发发送请求的示例
2020/11/05 Python
html2canvas截图空白问题的解决
2020/03/24 HTML / CSS
法国时尚童装网站:Melijoe
2016/08/10 全球购物
德国婴儿推车和儿童安全座椅商店:BABYSHOP
2016/09/01 全球购物
财务会计人员求职的自我评价
2014/01/13 职场文书
荷叶圆圆教学反思
2014/02/01 职场文书
素质教育标语
2014/06/27 职场文书
护士长2014年度工作总结
2014/11/11 职场文书
普希金诗歌赏析(6首)
2019/08/22 职场文书
mysql 带多个条件的查询方式
2021/06/05 MySQL
「回转企鹅罐」10周年纪念展「輪るピングドラム展」海报公开
2022/03/22 日漫
浅谈css清除浮动(clearfix和clear)的用法
2023/05/21 HTML / CSS