文档章节

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

史帝文
 史帝文
发布于 2016/11/19 21:31
字数 585
阅读 34
收藏 0
点赞 0
评论 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
博文 55
码字总数 21238
作品 0
武汉
后端工程师
WordPress 插件开发教程 Part 3 – 钩子( Hooks )

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

Amamatthew ⋅ 2014/07/07 ⋅ 0

wemall 7.0 开源系统发布,支持公众号和小程序开发

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

einsqing ⋅ 2017/05/03 ⋅ 7

einsqing/wemall

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

einsqing ⋅ 2014/05/24 ⋅ 0

CmlPHP V2.6.8 发布,快速易维护的 PHP 框架

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

雨空 ⋅ 2016/08/18 ⋅ 4

wordpress调试工具插件:Debug This

【插件介绍】 Debug This是一款wordpress的调试工具插件,插件通过wordpress的front-face钩子显示在管理banner条上,本工具需要使用超级管理员登陆才能使用。 本工具可以用于调试49种的debug...

tyshymy ⋅ 2013/05/13 ⋅ 0

《Nodejs开发加密货币》之二十七:开发通用的HTML组件

前言 人的懒惰常常是麻烦的开始。多数程序员都希望自己的工作一劳永逸,一次开发,到处使用,成了人人追逐的目标,我也不例外。最初写《Nodejs开发加密货币》系列文章,因为不喜欢设定好了去...

imfly ⋅ 2016/09/14 ⋅ 0

vue-router用法记录

###Vue-Router简介 Vue-Router是Vue.js官方维护的路由插件,同时也是官方推荐的路由插件。它与Vue.js内核深度结合,让开发单页应用更加容易简便。 ####基本配置 HTML 当 对应的路由匹配成功,...

iceuncle ⋅ 2017/11/28 ⋅ 0

wordpress功能集成(三):基础知识-wordpress过滤器

前一篇文章已经将了wordrpess钩子,过滤器和同样重要,也是插件开发的一个重要接口,过滤器原理跟钩子差不过,只不过功能不一样,“动作钩子”我之前面加个动作,是因为过滤器其实也叫"过滤器...

drewin ⋅ 2013/05/14 ⋅ 0

PHP钩子是什么?

PHP 写插件 其中的HOOK 只是别人想的一个词语,术语而已 并无实际意义 在WINDOWS编程中 HOOK==钩子 是一种消息机制的一种 意思就是:蚊子叮了你一口,你的大脑神经接收到了,于是指挥肢体,去...

lg2045 ⋅ 2013/05/10 ⋅ 1

thinkphp3.2插件

1.插件和行为 行为的理解就是,预留一个位置,这个位置会在程序的执行过程中执行到,至于执行到这个位置,你希望有什么其他的操作,可以自由定义。 说完了行为,来说今天的主题,插件。为什么...

oneboi ⋅ 2016/12/20 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Sqoop

1.Sqoop: 《=》 SQL to Hadoop 背景 1)场景:数据在RDBMS中,我们如何使用Hive或者Hadoop来进行数据分析呢? 1) RDBMS ==> Hadoop(广义) 2) Hadoop ==> RDBMS 2)原来可以通过MapReduce I...

GordonNemo ⋅ 12分钟前 ⋅ 0

全量构建和增量构建的区别

1.全量构建每次更新时都需要更新整个数据集,增量构建只对需要更新的时间范围进行更新,所以计算量会较小。 2.全量构建查询时不需要合并不同Segment,增量构建查询时需要合并不同Segment的结...

无精疯 ⋅ 23分钟前 ⋅ 0

如何将S/4HANA系统存储的图片文件用Java程序保存到本地

我在S/4HANA的事务码MM02里为Material维护图片文件作为附件: 通过如下简单的ABAP代码即可将图片文件的二进制内容读取出来: REPORT zgos_api.DATA ls_appl_object TYPE gos_s_obj.DA...

JerryWang_SAP ⋅ 40分钟前 ⋅ 0

云计算的选择悖论如何对待?

导读 人们都希望在工作和生活中有所选择。但心理学家的调查研究表明,在多种选项中进行选择并不一定会使人们更快乐,甚至不会产生更好的决策。心理学家Barry Schwartz称之为“选择悖论”。云...

问题终结者 ⋅ 48分钟前 ⋅ 0

637. Average of Levels in Binary Tree - LeetCode

Question 637. Average of Levels in Binary Tree Solution 思路:定义一个map,层数作为key,value保存每层的元素个数和所有元素的和,遍历这个树,把map里面填值,遍历结束后,再遍历这个map,把每...

yysue ⋅ 今天 ⋅ 0

IDEA配置和使用

版本控制 svn IDEA版本控制工具不能使用 VCS-->Enable Version Control Integration File-->Settings-->Plugins 搜索Subversion,勾选SVN和Git插件 删除.idea文件夹重新生成项目 安装SVN客户......

bithup ⋅ 今天 ⋅ 0

PE格式第三讲扩展,VA,RVA,FA的概念

作者:IBinary 出处:http://www.cnblogs.com/iBinary/ 版权所有,欢迎保留原文链接进行转载:) 一丶VA概念 VA (virtual Address) 虚拟地址的意思 ,比如随便打开一个PE,找下它的虚拟地址 这边...

simpower ⋅ 今天 ⋅ 0

180623-SpringBoot之logback配置文件

SpringBoot配置logback 项目的日志配置属于比较常见的case了,之前接触和使用的都是Spring结合xml的方式,引入几个依赖,然后写个 logback.xml 配置文件即可,那么在SpringBoot中可以怎么做?...

小灰灰Blog ⋅ 今天 ⋅ 0

冒泡排序

原理:比较两个相邻的元素,将值大的元素交换至右端。 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第...

人觉非常君 ⋅ 今天 ⋅ 0

Vagrant setup

安装软件 brew cask install virtualboxbrew cask install vagrant 创建project mkdir -p mst/vmcd mst/vmvagrant init hashicorp/precise64vagrant up hashicorp/precise64是一个box......

遥借东风 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部