thinkcmf ajax,个人使用琐记-thinkcmf

ThinkCMF是一款基于ThinkPHP+MySQL开发的中文内容管理框架。ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,根据自身的需求以应用的形式进行扩展,每个应用都能独立的完成自己的任务,也可通过系统调用其他应用进行协同工作。所以在ThinkCMF中你只是增加了一个APP,每个独立运行互不影响,便于灵活扩展和二次开发。

代码遵循Apache2开源协议,免费使用,对商业用户也无任何限制

thinkcmf里的simpleboot开发框架,完全基于bootstrap 2.3.2,但它拥有更多的组件,同时支持IE7+,可以直接使用,不用再次安装

ThinkCMF特别开发规范

1、应用后台控件器放在应用Controller目录中,最好不要存放在Admin/Controller下,保证应用模块独立

2、应用后台控件器命名以****adminController.class.php或者Admin****Controller.class.php命名的是后台Controller, 在后台菜单导入时会自动识别

3、应用后台控件器方法命名:用户无法访问的内部方法,请以下划线(_)开头;

4、附件保存路径,要相对于upload目录,只保存之后路径

5、使用I函数获取post和get的数据

6、模板中php代码注释都使用/**/的方式,//这种方式一定不要用,否则debug关闭后会有各种问题!

7、各种php文件最好别加?>结束,防止响应多余字符

ThinkCMF目录结构|–admin /管理后台URL重定向目录,你可以将文件夹名改为任何你喜欢的

|–themes /后台模板文件目录

|–application /应用目录

|–data /各类数据存放目录,包括缓存数据

|–simplewind /核心包,无特殊情况请勿改动

|–public /静态文件存放包,包含bootstrap资源

|–themes /前台模板文件目录

application 目录结构:|–application

|–Admin /后台管理应用

|–Api /公共接口

|–Asset /资源管理应用

|–Comment /评论应用

|–Common /应用公共模块

|–Portal /门户应用

应用就是application目录下的一个模块,它是独立于其它模块存在的,有自己独立的运行空间;例如Blog应用目录结构:

Controller 控制器目录(必备)

Common 函数库(可选)

Conf 配置(可选)

Lang 多语言包(可选)

Menu 后台菜单(可选)

Model 模型(可选)

nav.php 前台导航文件(可选)

而在 CMF 中应用的 View 是独立于应用之外的,它分为前台view 和后台view, 分别存放在themes/前台主题/应用名,和admin/themes/后台主题/应用名下;

创建一个blog应用

1、在application/Common/Conf/config.php文件MODULE_ALLOW_LIST数组里加上应用名Blog

2、在application下创建上面讲到的Blog目录结构;

前台控制器

前台控制器位于应用的Controller目录下,一般继承Common\Controller\HomebaseController,如果你需要用户登录才访问或操作此控制器,就要继承Common\Controller\MemberbaseController;

后台控制器

在某个应用Controller目录下创建一IndexadminController.class.php文件(注意:这里有文件命名规则,以****adminController.class.php或 Admin****Controller.class.php命名的是后台Controller, 在后台菜单导入时会自动识别

就要用户登录才能访问,就继承自AdminbaseController这个控制器。

不用管理员登录也能被访问到,只给IndexadminController加个空的_initialize()方法(初始化,这里不执行父类的初始化方法);

模板定义:

6be4de3fcce4

前台模板位于themes目录下,后台模板位于admin/themes目录下,前后台都是多主题机制的,可以分开设置不同的主题;

6be4de3fcce4

这是前台模板的结构;应用之间彼此分开,Portal目录下就对应的是application/Portal应用的模板文件;

一个模板文件大致路径是这样的:themes/主题名/应用名/控制器名/操作名+(.html) 或者 themes/主题名/应用名/自定义模板名+(.html),如:themes/simplebootx/User/Profile/password.html,themes/simplebootx/Portal/index.html;

应用名以后的部分,开发者可以用控制器的display方法指定模板的具体文件名

模板主题

cmf分为前台模板主题和后台模板主题,两都分开独立设置,它们也在不同的目录下,前台模板在themes下,后台模板在admin/themes下。

前后台是都支持多主题的,如果我想增加的主题,只要把默认主题复制后,目录名改一下放在前后台主题目录下,就是一个新的主题,当然你完全可以从零开始写,只要确保文件名对应就可以了;要注意模板命名格式,英文字母加数字的形式

注意你在打开模板方案里可能会发现_en-us,_mobile,_mobile_en-us结尾的类似模板,这些都是相应模式下的模板,比如,你后台设置的是simplebootx,如果是手机用户系统会自动判断,并使用simplebootx_mobile模板,如果用户是英文的系统也会自动判断使用simplebootx_en-us模板;

应用开发流程:

http://www.thinkcmf.com/docs/cmfx/extends/application_flow.html

全局变量:

{$site_name}/站点名称

{$site_host}/站点域名

{$site_root}/安装目录

{$site_icp}/备案信息

{$site_admin_email}/管理员邮箱

{$site_tongji}/页面统计代码

{$site_seo_title}/SEO标题

{$site_seo_keywords}/SEO关键字

{$site_seo_description}/SEO描述

{$site_copyright}/版权信息

模板常量:

__ROOT__:网站根目录,不带/;

__WEB_ROOT__: 网站资源根目录,不带/,如果以前版本用__ROOT__来定位网站资源,x2.2.0以后最好用这个常量,方便以后cdn切换

__TMPL__:当前模板根目录,带/;

如:前台 simplebootx 模板根目录是/themes/simplebootx/

后台 simplebootx模板根目录是/admin/themes/simplebootx/

__PUBLIC__:public目录,不带/;

包含文件:

tc_include

tc_include是前台模板包含文件的方法,用于替换原来的include的标签,实现更多功能

加载当前模板的Public/nav.html文件

验证码,幻灯片,评论,ajax操作时的弹框等都已经组织在框架里面。

还有一些好用的函数,比如获取当前用户信息、生成随机数、发送邮件、分页

注意:

1、平时一定要把data/conf/db.php文件做个备份

原文链接:https://blog.csdn.net/weixin_42394573/article/details/119524129?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165918471416781683945613%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165918471416781683945613&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-27-119524129-null-null.nonecase&utm_term=%E5%85%8D%E5%A4%87%E6%A1%88cdn

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/1891

(0)
上一篇 2022年7月30日 21:25
下一篇 2022年7月30日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml