Onethink下载请自行百度咯,安装也就几秒钟。

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

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

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

step1.   选择“新增”

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

如图:

钩子创建完毕。

Next:

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

注意:是hook,不是hooks;

Next:

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

Next:

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

Next:

step7.  点击安装。

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

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

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

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

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

插件怎么写呢?

Next,编写插件模板:

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

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

在插件类分配变量:

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

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

没有配置前:

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

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

Next:

step11.   填入要显示的值

step13.  点击“确定”。

Next:

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

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

Next:

最后效果如图:

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

希望对需要的朋友有帮助,下一步就是用插件制作一个图片滚动效果。

Onethink1.1 钩子和插件的使用!的更多相关文章

  1. php中的钩子(hook插件机制)

    对"钩子"这个概念其实不熟悉,最近看到一个php框架中用到这种机制来扩展项目,所以大概来了解下. hook插件机制的基本思想: 在项目代码中,你认为要扩展(暂时不扩展)的地方放置一 ...

  2. PHP钩子机制

    什么是钩子 大家想必听过插件,wordpress插件特别多,这个就是用钩子机制实现的. 当代码在运行的过程中,我们预先在运行的几个特殊点里执行一些特殊方法:例如在运行方法(例如Blog::add的ad ...

  3. php插件机制实现原理

    插件,亦即Plug-in,是指一类特定的功能模块(通常由第三方开发者实现) 它的特点: 1. 随时安装.卸载.激活.禁用 2. 无论什么状态都不影响系统核心模块的运行, 3. 是一种非侵入式的模块化设 ...

  4. Wordpress解析系列之PHP编写hook钩子原理简单实例

    Wordpress作为全球应用最广泛的个人博客建站工具,有很多的技术架构值得我们学习推敲.其中,最著名最经典的编码技术架构就是采用了hook的机制. hook翻译成中文是钩子的意思,单独看这个词我们难 ...

  5. wordpress学习(三)-----add_action动作钩子和add_filter()过滤器钩子

    <?php echo "<h2>高级教程add_action动作和add_filter()过滤器</h2><br/>"; //1.学会使用 ...

  6. 如何编写一个WebPack的插件原理及实践

    _ 阅读目录 一:webpack插件的基本原理 二:理解 Compiler对象 和 Compilation 对象 三:插件中常用的API 四:编写插件实战 回到顶部 一:webpack插件的基本原理 ...

  7. Pytest权威教程19-编写钩子(Hooks)方法函数

    目录 编写钩子(Hooks)函数 钩子函数验证和执行 firstresult: 遇到第一个有效(非None)结果返回 hookwrapper:在其他钩子函数周围执行 钩子(Hooks)函数排序/调用示 ...

  8. webpack编写一个plugin插件

    插件向第三方开发者提供了 webpack 引擎中完整的能力.使用阶段式的构建回调,开发者可以引入它们自己的行为到 webpack 构建流程中.创建插件比创建 loader 更加高级,因为你将需要理解一 ...

  9. Pytest_Hook钩子函数总结(14)

    前言 pytest 的钩子函数有很多,通过钩子函数的学习可以了解到pytest在执行用例的每个阶段做什么事情,也方便后续对pytest二次开发学习.详细文档可以查看pytest官方文档https:// ...

随机推荐

  1. android 获取Datepicker日期

    1.使用的Android5.0系统,实现上面效果使用了alertdialog 2.布局文件: layout_dataselect <?xml version="1.0" en ...

  2. AngularJS 表单

    AngularJS 表单是输入控件的集合. HTML控件 以下 HTML input 元素被称为 HTML 控件: input 元素 select 元素 button 元素 textarea 元素 H ...

  3. Python中使用递归输出嵌套列表并转化为大写

  4. SqlServer按时间自动生成生成单据编号

    SET @_tmpDateTime = GETDATE() EXEC dbo.Dtw_Common_GenerateProofCode @ProofType = 'SO',@WhsCode=@WhsC ...

  5. 网络知识学习4---(DNS的作用)

    1.DNS 简介 DNS是域名解析协议 在互联网中通过IP 地址来进行通信.但是IP 地址的表示形式是数字,很难进行记忆(比如116.213.120.232),所以为每个 IP取一个人类更易记忆的域名 ...

  6. jsf初学解决GlassFish Server 无法启动

    由于公司需要用JSF开发项目.公司同事都不熟悉,本人C# 转JSf.开发工具 netbeans GlassFish. 遇到GlassFish 非常 纠结的问题.搞了好一段时间,, 装好GlassFis ...

  7. xml dtd 内部dtd 外部DTD 公共DTD

    (一个可以用来校验xml有效性的网站:http://www.xmlvalidation.com/) (经测试 eclipse neon 对于dtd的校验并不严格,比如DOCTYPE后面的根元素名与实际 ...

  8. 给Jquery动态添加的元素添加事件

    给Jquery动态添加的元素添加事件 来源:[http://wangqixia.diandian.com/post/2011-05-10/6597866] 我想很多人都会向我一样曾经 被新元素的事件绑 ...

  9. php多文件上传

    多文件上传<input type="file" name="file[]" multiple /> <?php function reArra ...

  10. [译]:Orchard入门——导航与菜单

    原文链接:Navigation and Menus 文章内容基于Orchard1.8版本.同时包含Orchard 1.5之前版本的导航参考 Orchard有许多不同的方法来创建菜单.本文将介绍两种较为 ...