JSite and JAdministrator
这一次是介绍Joomla的一些个几本概念啦,不过我可以不是全职翻译,有些地方还是觉得用英文好点,英文的文档真的看起来还是比较舒服的。但是由于我比较穷,买不起书,网上这个影印版在图上又不是很清晰,看得朦朦胧胧的,雾里看花。什么时候才能成为一个真正的买得起书的程序员呢。哎哎。安慰自己,穷的有骨气的程序员。虽然我用盗版,但是用得理直气壮。就这样,活下去。
在joomla中两个重要处理请求的全局对象,前台方面有的有JSite,后台有JAdministrator,这个两个对象都是扩展JApplication,JApplication是一个抽象类,所谓抽象类,指的是不能实例化的类,一般我们会用到这个东西都是利用JFactory::getApplication()来返回一个Application,可不能直接new一个。当然JSite和JAdministrator是差不多相似的东西。指的是函数的类似。
有处理请求的全局对象,当然就有处理相应的东东,在js中document用得很熟悉了吧,那么Joomla也有这么一个东西来缓冲响应的。当然分为很多的document,有HTML,PDF、RAW、feed、还有error,HTML document是用来生成(在这里我想用渲染这个词,感觉顺口)一个XHML页面的。其他的类似,跳跳。
document就相当一个缓冲池,里面的东西并还没有发送出去,如果想修改可以再取出来修改的,比如多加一个js文件到头信息,当然要在Applicaition的生命期内呢(俺的理解就是想加就加,加不了用其它办法)。
Japplication这个东西是一个全局对象,所以我们可以在任何的地方拿到呢。
通过一个简单的声明语句就可以了。
global $mainframe;
当然有前面的方法也是没有错的。个人爱好。
document的获得就只有一种方法了,
$document = & JFactory::getDocument();
菜鸟必懂,前面的&这个符号是一个引用符号,于是document指向唯一的全局对象,不产生一个副本,实际上不写这个可以符号这句话也不会出错,只不过你对document的修改不起作用而已,呵呵。谨记,有些对象只需要一份就可以了,单例模式,如果这个都不懂,没有关系,因为本博客全面面向菜鸟,做中国第一的菜鸟博客(做牛人博客做不来,本人太水了)。
下一节讲的是网站的一个必懂知识点