您的位置:首页 > 其它

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语句,用
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代码中的核心对象。实在要改,用子类
别改其他开发者的代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: