你现在的位置:首页 > PHP网站建设知识库 > Joomla > 正文

joomla 3 结构概述

url:
后台链接 固定是 administrator
参数:
component/users 表示 调用 的是 users组件
view=registration 表示 调用的是注册的页面,
index.php?option=com_weblinks&view=weblink&layout=edit 经典的3个参数
index.php?option=com_categories&extension=com_weblinks 添加 分类 的时候 还有个参数 extension
option表面 调用 的组件 ,view表现调用 的视图参数 ,layout是模板文件
文件
administrator 存放 后台的程序 文件,里面的文件结构 基本上和前台一致
bin
cache - 缓存
cli
components - joomla 组件 的文件夹
language - 语言包的文件夹
layouts
images - 相应图片的文件夹,也是后台meida manager的文件夹
includes - 含有程序 的总体框架 3个文件 application.php framework.php defines.php
libraries - 调用的类库
logs: 日志
media - 其他用到的css , js 等文件
modules - 模块的文件夹
plugins - 插件的文件夹
templates - 模板的文件夹
tmp
configuration.php - 程序 设置的基本信息
index.php - 入口文件,根据 url参数,分解和寻找相应的功能模块
程序结构:
index.php:入口文件,在这里根据url参数 ,寻找相关的功能模块
调用 了includes里面的 defines.php , framework.php
$app = JFactory::getApplication('site');
$app->initialise();
$app->route();
$app->dispatch();
$app->render();
echo $app;
defines.php: 定义 了常用 的路径
framework.php: 加载相应的文件。
关闭魔法引用
检测 configaration.php 判断 是否调用 installation安装 包
调用 require_once JPATH_LIBRARIES.'/import.legacy.php'; //加载 了 libraries 下的 platform.php及 loader.php
初始化各种类
其他结构:
1. index.php 中定义 了一个常量 define('_JEXEC', 1); ,然后在所有 的库类文件前都 有一行
defined('_JEXEC') or die;
避免非法调用
2.每个文件夹下有个index.html 显示的是空页面,避免 显示或列出文件夹中的文件
类的命名:
前面用J 开始,每个单词第一个字母大写,如:JLoader,JControllerLegacy
函数第一个字母是小写,如果 是2个单词,后面的单词第一个字母 大写 ,如getItems
注释格式:
/**
* 这里是注释
*/
view类的命名规则: WeblinksViewWeblinks, WeblinksViewWeblink 组件名称View组件名称(单复数)
model类的命名规则:WeblinksModelWeblinks,WeblinksModelWeblink 组件名称Model组件名称(单复数)
controller类的命名规则:WeblinksControllerWeblink, WeblinksControllerWeblinks 组件名称Controller组件名称(单复数) WeblinksController,组件名称Controller,默认的controller类命名
数据库字段之间,多个单词使用下划线隔开,小写: publish_down
如果 有2个函数 需要 用同一个名称 ,更基础 的那个前面加_,然后在他的里面再调用 没加下划线的如
_getListQuery 调用 getListQuery