文档章节

Onethink1.1 钩子和插件的使用!

史帝文
 史帝文
发布于 2016/11/19 21:31
字数 585
阅读 36
收藏 0

高手(略),只是针对和我一样需要了解的菜鸟。

主要讲一讲onethink插件的使用,因为这对我们的快速开发有帮助,所以记录一下,同时也希望能够帮助一下正在想要了解的朋友。

 

我们从钩子讲起,先看下面的后台界面:

Onethink1.1 钩子和插件的使用! PHP 第1张

 

step1.   选择“新增”

Onethink1.1 钩子和插件的使用! PHP 第2张

 

step2.   根据需求填写(钩子名唯一),然后点击“确定”,提示创建成功。

如图:

Onethink1.1 钩子和插件的使用! PHP 第3张

 

钩子创建完毕。

 

Next:

Onethink1.1 钩子和插件的使用! PHP 第4张

step4.   有钩子就要调用,找到需要调用的模板,添加如下语句:      {:hook('BannerImageSlide')}

注意:是hook,不是hooks;

 

Next:

Onethink1.1 钩子和插件的使用! PHP 第5张

step5.  点击“插件管理”的“快速创建”

 

Next:

 Onethink1.1 钩子和插件的使用! PHP 第6张

Onethink1.1 钩子和插件的使用! PHP 第7张

step6.   根据需要选择或填写,点击"确定"。

 

Next:

Onethink1.1 钩子和插件的使用! PHP 第8张

step7.  点击安装。

 

返回文件,查看生成的目录和文件:

Onethink1.1 钩子和插件的使用! PHP 第9张

在./Addons/下生成了ImageSlide目录和config.php,ImageSlideAddon.class.php两个文件

 

如何看我们的插件在你自己的钩子下有效果呢?

Onethink1.1 钩子和插件的使用! PHP 第10张

在类中找到你的钩子的方法,并且打印一下试试。

Onethink1.1 钩子和插件的使用! PHP 第11张

如果调用的地方打印了刚才插件中echo的信息,说明就可以调用了。如果没有调用,就要重新仔细检查一下,看是不是没有调用对位置。

 

插件怎么写呢?

 

Next,编写插件模板:

Onethink1.1 钩子和插件的使用! PHP 第12张

step9.  问号中的内容是分配给这个模板的变量,可以先用占位符表示。

值得一提的是,编写插件模板就和我们写html页面没区别。同样可以在页面中引入插件需要的css,js,images等资源。

 

在插件类分配变量:

Onethink1.1 钩子和插件的使用! PHP 第13张

这里的配置不是很方便说明,后面再解释。

配置好以后,就可以使用插件的“设置”操作

没有配置前:

Onethink1.1 钩子和插件的使用! PHP 第14张

添加了插件配置信息过后:

Onethink1.1 钩子和插件的使用! PHP 第15张

step10.  如果没有出现“设置”操作,请先“卸载”,再安装。点击“设置”;

 

Next:

Onethink1.1 钩子和插件的使用! PHP 第16张

 

step11.   填入要显示的值

 

Onethink1.1 钩子和插件的使用! PHP 第17张

step13.  点击“确定”。

 

Next:

Onethink1.1 钩子和插件的使用! PHP 第18张

step15.  找到插件类文件,并且获取配置信息,并分配变量到模板文件content.html

 

Onethink1.1 钩子和插件的使用! PHP 第19张

效果如上,下一步很自然,在插件模板中获取变量值。

 

Next:

Onethink1.1 钩子和插件的使用! PHP 第20张

 

最后效果如图:

Onethink1.1 钩子和插件的使用! PHP 第21张

注意如果红框中的值,没有得到,很有可能你没有在插件“设置”中设置值。

本文转载自:

共有 人打赏支持
史帝文
粉丝 6
博文 56
码字总数 22088
作品 0
武汉
后端工程师
WordPress 插件开发教程 Part 3 – 钩子( Hooks )

钩子是 WordPress 的精髓。他们允许插件开发人员钩进 WordPress 工作流程内部来改变它的工作,而不用直接修改核心代码。这就使得用户可以方便的升级到 WordPress 的新版本而不需要修改一行代...

Amamatthew
2014/07/07
0
0
wemall 7.0 开源系统发布,支持公众号和小程序开发

wemall7.0 开源系统,基于thinkphp5开发,支持composer,优化核心,减少依赖,基于全新的架构思想和命名空间。 wemall7.0特性: 基于TP5,性能优越 前后分离,简单方便 插件扩展,功能丰富 ...

einsqing
2017/05/03
953
7
einsqing/wemall

WeMall商城 7.0 (不含商城) wemall7.0 开源系统,基于thinkphp5开发,支持composer,优化核心,减少依赖,基于全新的架构思想和命名空间。 thinkphp5.0特性 基于命名空间和众多PHP新特性 核心...

einsqing
2014/05/24
0
0
CmlPHP V2.6.8 发布,快速易维护的 PHP 框架

CmlPHP V2.6.8 发布了,本次发布主要更新如下: 路由支持分组 redis 增加异常自动转移容灾机制 (有需求、有条件上codis|redis-cluster。如果只有小量节点甚至只有一两个节点不适合用codie|r...

雨空
2016/08/18
1K
4
探寻 webpack 插件机制

webpack 可谓是让人欣喜又让人忧,功能强大但需要一定的学习成本。在探寻 webpack 插件机制前,首先需要了解一件有意思的事情,webpack 插件机制是整个 webpack 工具的骨架,而 webpack 本身...

牧云云
04/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java中的移位运算符

国庆给自己放了个小长期二十几天,回来继续更新专栏 上一篇文章我们说了Java里的二进制,知道了计算机是以0和1来处理数据的,在阅读源码的过程中,经常会看到这些符号<< ,>>,>>>,这些符号...

SuShine
17分钟前
2
0
linux版QQ

下载地址在这 http://yun.tzmm.com.cn/index.php/s/XRbfi6aOIjv5gwj Appimage包不用做什么别的处理,安装啥的都不需要。。找到文件所在目录,终端中修改一下文件的权限 chmod 777 QQ-2017112...

悲催的古灵武士
23分钟前
1
0
咕泡-MyBatis 实用篇作业

1. Mapper在spring管理下其实是单例,为什么可以是一个单例? 首先,mapper 内部不包含 成员字段,无状态单例是安全的 另外,一直存在不用每次调用都new 一个新实例 2. MyBatis在Spring集成下...

职业搬砖20年
26分钟前
2
0
MQTT协议的初浅认识之连接建立

MQTT百科 MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布...

亚林瓜子
43分钟前
1
0
OpenStack部署都有哪些方式

对于每一个刚接触到OpenStack的新人而言,安装无疑是最困难的,同时这也客观上提高了大家学习OpenStack云计算的技术门槛。想一想,自己3年前网上偶然接触到OpenStack时,一头茫然,手动搭建一...

tututu_jiang
43分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部