Joomla开发最佳实践
2015-06-23 15:56
176 查看
https://docs.joomla.org/Development_Best_Practices
1、通用开发原则
用JInput或者JFactory::getApplication()->input 代替$_GET,
$_POST, $_REQUEST, $_FILES and $_SERVER来获取输入
不要硬编码SQL语句,用
不要留直接通过web访问的入口,用组件或者插件
有现成的类,就不要重新写
数据库的表名一定要醒目,如果你的组件叫com_foobar,表名:
文本用
在实际应用中用实际的数据测试,你会惊讶你的发现的
2、组件的Javascript,CSS,和Image放在什么地方
根目录下有个media文件夹
如果在安装的XML配置中,把文件放在<media>标签下,而不是<files>标签下,那么就将被放到JPATH_ROOT/media文件夹中
如果是<media
destination="com_foo"> ,就会被放在JPATH_ROOT/media/com_foo中
引用这些文件应该使用JHtml
类中的e image, script,
and stylesheet方法,而不是JDocument
或者硬编码
3、组件产生的文件放在什么地方?
取决于文件的属性,有2个决定性的因素:
文件的持久性
文件的部署:是否能通过web获取
几种可能:
临时的,不可网络获取。Joomla!的临时文件夹,通过JFactory::getConfig()->get('tmp_path')获取
临时的,可网络获取。不可接受
缓存,不可网络获取。JPATH_CACHE
缓存目录。
缓存,网络获取。media文件夹的二级目录。
永久的,不可网络获取。扩展主目录中的文件夹。使用.htaccess或通过用户权限设置。
永久的,可网络获取。media文件夹的二级目录。
如果还想操作log文件的话,用JLog
类。
4、关于Javascript
当内嵌Javascript到Joomla!页面时,要小心与其他扩展的Javascript相互作用。好的习惯包括:
用分号或者换行结尾
确定有效,没有错误
对于有风险的,一定要用 try/catch块
要在view模板而不是view类(view.html.php)中使用内嵌Javascript
其他的包括:
不要修改JQuery,mooTools或者任何Joomla!Javascript代码中的核心对象。实在要改,用子类
别改其他开发者的代码
1、通用开发原则
用JInput或者JFactory::getApplication()->input 代替$_GET,
$_POST, $_REQUEST, $_FILES and $_SERVER来获取输入
不要硬编码SQL语句,用
JDatabase/
JDatabaseQuery
,或者JFactory::getDbo()->getQuery(true)
不要留直接通过web访问的入口,用组件或者插件
有现成的类,就不要重新写
数据库的表名一定要醒目,如果你的组件叫com_foobar,表名:
// Good #__foobar_something // Bad #__fbr_something //Really Bad! #__something
文本用
JText而不是硬编码
在实际应用中用实际的数据测试,你会惊讶你的发现的
2、组件的Javascript,CSS,和Image放在什么地方
根目录下有个media文件夹
如果在安装的XML配置中,把文件放在<media>标签下,而不是<files>标签下,那么就将被放到JPATH_ROOT/media文件夹中
如果是<media
destination="com_foo"> ,就会被放在JPATH_ROOT/media/com_foo中
引用这些文件应该使用JHtml
类中的e image, script,
and stylesheet方法,而不是JDocument
或者硬编码
3、组件产生的文件放在什么地方?
取决于文件的属性,有2个决定性的因素:
文件的持久性
文件的部署:是否能通过web获取
几种可能:
临时的,不可网络获取。Joomla!的临时文件夹,通过JFactory::getConfig()->get('tmp_path')获取
临时的,可网络获取。不可接受
缓存,不可网络获取。JPATH_CACHE
缓存目录。
缓存,网络获取。media文件夹的二级目录。
永久的,不可网络获取。扩展主目录中的文件夹。使用.htaccess或通过用户权限设置。
永久的,可网络获取。media文件夹的二级目录。
如果还想操作log文件的话,用JLog
类。
4、关于Javascript
当内嵌Javascript到Joomla!页面时,要小心与其他扩展的Javascript相互作用。好的习惯包括:
用分号或者换行结尾
确定有效,没有错误
对于有风险的,一定要用 try/catch块
要在view模板而不是view类(view.html.php)中使用内嵌Javascript
其他的包括:
不要修改JQuery,mooTools或者任何Joomla!Javascript代码中的核心对象。实在要改,用子类
别改其他开发者的代码
相关文章推荐
- spring-remoting入门(http-invoker,hessian,burlap)
- [图像]Canny检测的Matlab实现(含代码)
- vijos 1234 口袋的天空
- Android之WebRTC介绍
- undefined使用注意
- 为什么需要MiniDao? 新持久层 3.5.1 版本发布,让hibernate跟mybatis一样灵活
- (2) 图像拉直-Image Straighten
- 【Android疑难杂症】GridView动态设置Item的宽高导致第一个Item不响应或显示不正常的问题
- Test markdown
- LA 3635 Pie (二分)
- h265核心技术
- Windows 10.1控制面板即将消失
- 使用root账户登录ubuntu 15.04
- Hadoop FS Shell
- xcode6制作动态库及合并不同架构动态库
- 多窗口
- 创建回调函数
- gsoap生成服务端客户端代码文件说明
- 阅读13到17章提出问题
- js禁止网页使用右键