什么是OneThink oneThink后台添加插件步骤?
OneThink以其便捷的网站建设、丰富的扩展、灵活的二次开发以及云服务的支持,将为广大个人和企业建设网站带来新的机遇和机遇,即将成为互联网的新浪潮。
OneThink功能介绍:
1.基于最新版本的ThinkPHP.
2.模块化:全新的架构和模块化开发机制,便于灵活扩展和二次开发。
3.文档模型/分类系统:通过与文档模型、不同文档类型绑定,不同分类可以实现差异化功能,轻松实现信息、下载、讨论、图片等功能。
4.开源和免费:OneThink遵循Apache2开源协议,提供免费使用。
5.用户行为:支持用户自定义行为,可以记录和分享个人用户或群组用户的行为,为您的运营决策提供有效的参考数据。
6.云部署:你可以通过驱动轻松支持平台的部署,让你的网站无缝迁移。内置已经支持SAE。
7.云服务支持:云存储、云安全、云过滤、云统计等支持服务即将上线。更贴心的服务会让你的网站更有安全感。
8.安全稳健:提供稳健的安全策略,包括备份恢复、容错、防范恶意攻击和登录、网页防篡改等。确保系统安全、可靠、稳定运行。
9.应用仓库:官方的应用仓库有大量来自第三方的插件和应用模块、模板主题,还有很多开源社区的贡献,让你的网站“One”变得漂亮。
在oneThink后台添加插件步骤:
版本:V1.1.141212(注意:V1.1也有很多版本,不小心下到了V1.1.140202,还有其他版本,建议从代码托管平台下载最新版本)。
我也不懒,每一步都有记录。
首先,进入后台,创建插件。
我在这里为钩子创建了一个新的索引页脚,因为我只需要在前台主页的底部显示友谊链接。我们在上面的所有地方打勾。至于区别,可以构建一些例子来区分生成的文件是否相同。好的!在这里我们的友谊链接插件将被创建!点击“确定”。(这里所有的自定义模板都没有填写。我将在下一篇文章中演示添加自定义模板的效果。)
其次,点击“安装”找到我们刚刚安装的Links插件。点击“设置”,你会看到它有一个默认选项“是否随机开启”。在这里,我们不关心它,因为我们不能使用它,我们以后会删除它。安装完成后,我们可以导航到左侧的“已安装插件后台”,查看我们新创建的“友谊链接”。
3.当我们点击左侧导航中的“友情链接”时,你会发现报告了一个错误,这可能意味着某个表不存在。是的,我们刚刚建立了一个插件。如果涉及到在数据库中存储数据,我们还需要构建一个表。这里不直接建在数据库里,因为这样做很不人道。然后我们会找到安装插件的函数,在安装插件的时候设置数据库,这样就可以了。首先,系统的所有插件都存储在根目录/Addons/文件夹下。打开这个文件夹,我们可以看到有一个Links文件夹,就是我们刚刚创建的插件。一个插件对应一个文件夹。打开链接文件夹,其中包含2个文件和2个文件夹。
第四,其实现在oneThink越来越简洁了。不懂PHP的人还在创建插件,到时候你就知道了。当然,如果你有自己的想法,不想被官方的限制所限制,那就要学好php。
5.打开插件入口文件:在LinksAddon.class.php有一个类链接。我们先分析一下这个文件。
在这里,我将$admin_list数组的模型值更改为links,以便与插件相对应。接下来,我们在install方法中添加一个新的数据库语句,这样当我们安装插件时,我们将创建一个新的数据库。我的代码如下:
函数安装(){//安装插件的方法//1。添加数据表$ model=D();$ DB _ PREFIX=C(' DB _ PREFIX ');$ table _ name=' { $ db _ prefix }链接';$ SQL=SQL create table如果不存在`$ table _ name` (` id`int (11)无符号不为null auto _ increment comment '主键',` title`varchar (80)不为null默认值' ' comment '网站名称',` link`varchar (140)不为null默认值' ' comment '链接地址',` summary`varchar (255)不为null默认值' ' comment '网站说明',` mailto`varchar (100)不为null默认值' ' comment '网站管理员联系信息',` sort`int (3) ` type`tinyint (3)无符号不为null默认1注释' type grouping ',` cover _ id`int (11)无符号不为null默认0注释' cover picture ',` status`tinyint (2)不为null默认1注释' status (0: disabled,1: normal)',` create _ time`int (11)无符号不为null默认0注释' add time ',主键(` id `) engine=myisamaauto _ increment=4 default charset=utf8 row _ format=dynamic comment='友谊连接表'; SQL$ model-execute($ SQL);//执行sql语句//2,返回true,表示插件安装成功;返回真;}这里省略了很多详细的判断,大家自行完善。
6.由于在安装插件的时候创建了一个新的表,所以我们在卸载插件的时候需要删除这个表,否则下次安装插件的时候就会出现问题。因此,我们的卸载方法代码如下:
函数卸载(){//卸载插件的方法$ model=D();$ DB _ PREFIX=C(' DB _ PREFIX ');$ table _ name=' { $ db _ prefix }链接';$sql=“如果存在,删除表”。$table_name。'`;';$ model-execute($ SQL);//执行sql语句返回true}好了,这里就讲到这里。保存LinksAddon.class.php文件,它应该正常显示。让我们看看。进入插件列表,先卸载Links插件,然后重新安装。点击左侧菜单“友情链接”,可以看到。
这个列表之所以能正常显示,是因为系统有默认模板。在\Application\Admin\View\Addons文件夹中,感兴趣的同学可以研究这些模板文件,其中这个列表的模板是adminlist.html,所以我们需要更改封面、标题、描述等词语。我们需要在模板中更改它们吗?细心的学生已经注意到它是在LinksAddon.class.php文件的$admin_list数组中配置的,其他的可以通过查看后面的评论来理解。在这里,让我们详细谈谈与list_grid关联的数组。我们刚刚创建的链接数据表有id、标题、链接等字段。您可以添加要在此列表中显示的任何字段。我的代码如下:
List_grid'=array(//这里定义了表中除id序号以外的字段显示的表头名称支持函数和链接' title:网站名称',' link:链接',' summary:描述',' Create _ Time | Time _ Format 3360 Add Time ',和模型一样。//time_format是一个格式化时间的函数,其他地方想用的任何函数也可以写成这种格式‘id 3360 operation :[edit]| edit,[DELETE]| DELETE’),保存并刷新后台友情链接列表。
让我们点击“添加”来添加一个友谊链接。你会发现只有一个标题字段。让我们打开文件Model/LinksModel.class.php,我将在这里分别解释这两个独立的数组。请参见下面代码中的注释。
类链接模型扩展模型{public $ model=array ('title'=' ',//添加[title],编辑[title],删除[title]' template_add'=' ',//自定义新模板。自定义HTML edit.html以读取插件根目录中的模板“template _ edit”=“”、//=“”。//自定义模板HTML' search _ key'=' '。//默认情况下,搜索的字段名为title' extend'=1。//是否在后台列表中显示“添加”和“删除”按钮,0-不显示1。public $ _ fields=array(' id '=array(' name '=' id ',//field name ',' title'=' id '对应数据库中的字段,//显示title' type'='num ',//字段类型:num,string,textarea,datetime,bool,select,radio,checkbox,editor,picture(封面),file(附件),'备注'=' ',//备注,相当于配置中的tip 'is_show'=3。//1-始终显示2-新显示3-编辑显示0-不显示'值'=0,//默认值)。//让我们演示如何以与“type”=array(‘name’=‘type’,‘title’=‘type’,‘type’=‘type’,‘type’=‘select’)相同的方式显示单选和复选框。备注'='请选择类型',' is_show'=1,' extra'='0:友情链接,1:合作站点',' value'=0,' is_must'=1,);}好了,我最后的效果是这样的:
添加一条数据,看一看:
要在此显示特定类型和图片,您需要自定义adminlist.html模板。我们将在下一篇文章中讨论自定义模板。关于钩子,只是写一个函数从数据库中读取数据,然后在前台需要的地方调用钩子。如果你需要一个模板,在钩子函数中解析它。通话格式一般为:
{:hook ('hook name '),'[parameter]'}在没有参数的情况下不会被写入。直接这样写{:hook ('hook name')}
到目前为止都是使用系统的默认模板,并且一步一步的构建自己的插件。是不是很简单,就像填空一样?按照它的规则填空就可以了。
以上就是本文的全部内容,希望对大家学习PHP编程有所帮助。
版权声明:什么是OneThink oneThink后台添加插件步骤?是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。

















