`
zhongguo168a
  • 浏览: 45646 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

第一章 Joomla!扩展开发:概况

阅读更多

第一章        Joomla!扩展开发:概况

 

你以前开发过动态网站但你的朋友告诉你有关Joomla!的事,所以你决定试一试。从食物网上那些出名的厨师中得到灵感后,你想建立一个简单的关于餐厅的网站。这个网站的安装比你期望要建立的内容管理系统要快速和平稳。

当你找到一个精美的模板并添加了一些菜单和一些内容后,你开始考虑增加一些新的特性可以给你带来更多的访问量,甚至一些钱。之后,你安装了购物车来买书,一个论坛来收集意见和一些边栏广告。

 

为什么扩展Joomla

       Joomla!不但能够处理内容文章,而且允许你干净地综合各种复杂的应用。开发者为Joomla!开发各种扩展,如购物车、论坛、职位发布等。所有这些扩展能够运行在单个数据库、模板和核心。我们开发出来的扩展,界面是完全统一的。

       当你正确地开发扩展时,你就不用登录数据库和做其他基本的配置。另外,你也可以分发你自己开发的扩展给别人和别人分享,不需要另外的编程和数据库操作。

 

自定义 VS 扩展

       Joomla!的代码是设计成可扩展的而不是直接修改它的核心代码。当有升级版本或者有补丁的时候,Joomla!会升级它本身的核心代码,而你的扩展你不会被覆盖的。

 

如何扩展Joomla

Joomla!支持三类扩展,每一类都有特殊的用途。

组件

组件是最基本的,组件就是你所看到的页面的主要部分。Joomla!的设计是来为每个页面加载和运行一个组件。因此,Joomla!核心的内容管理功能本身也是一个组件。

组件经常会有强大的后端管理。后端通常用来创建和更新数据库记录。你也可以用它来允许网站管理员来上传图片或者视频。

模块

       相对组件,一个页面可以有很多的模块。模块一般由边栏的元素或者是内容菜单组成,模块显示组件的内容,它们不是页面的主要内容。Joomla! 也支持不需要编程的内容模块。模块后端的控制是有限制的,一般由基本的格式组成。

插件

       当网站需要插入一些代码来实现某些逻辑,它可以由插件实现(以前叫做Mambot)。插件一般用来格式化页面的组件或者模块的输出。例如有这样的组件,关键字高亮显示、文章评论表单、基于JavaScriptHTML编辑器等。后端的控制与模块相似。

主题概况

创建工具栏和列表

       Joomla!的后端提供了一套标准的工具栏按钮。它们使得界面可以保持一致的风格,所以使用者可以很快地熟悉相应的功能。如果有必要的话,这些按钮可以修改和添加。和标准的工具栏一样,数据库记录的列表也有统一的显示风格。这些列表通常会包括编辑单条记录的链接,改变发布状态的链接和提供自动分页功能。

使用HTML函数来维护一致的外观和减少重复的代码

       在你的扩展里,有各种标准的CSS类名可以用来格式化内容和HTML元素。另外,Joomla!包含很多函数可以自动生成复选框、下拉框和其他通用的元素。

访问数据库和管理记录

       Joomla!提供了一个公用的数据库对象,可以让每个页面的请求只适用一个连接。这个对象提供了一组函数用来查询数据和返回结果。这些函数是独立数据库的,他们被设计成支持一个数据库多Joomla!。除了一个公用的数据库对象,Joomla!还提供了标准的数据库表类。使用它核心的函数可以创建、读取、更新和删除记录。也可以添加这样的逻辑,当父记录被删除,其他表的子记录也会被删除。

安全和获取请求变量的首选方法

       既然Joomla!是一个公开的web 应用,有必要保护他免受攻击。Joomla!提供了只有在框架里被调用的保险的脚本方法,也不会随便地执行。除非是未明的脚本行为,黑客能故意地提交数据来访问你的数据库,Joomla!提供了阻止这类攻击的功能。

 

菜单项控制

       Joomla!的一个显著的特性是导航与内容分离。然而,如果一个组件创建时没有考虑到这一点,网站管理员可能会不能选择他们的模板和模块。为了利用这给系统,有必要在产生连接时使用既定的菜单项ID数字。组件的链接可以有多个选项,允许在前端显示不同的选择而不用手工去构建长长的URL

控制组件的逻辑流

       当某一个组件被加载时同一个文件被调用,但是执行不同的函数。Joomla!使用标准的变量来决定每个请求要执行的函数。对于比较小的组件,可以用来从数据库和其它处理函数直接处理输出,比较大的组件会使用controller来处理逻辑流,用model来处理数据访问,用views来控制输出。这样的约定使得维护代码更加容易和帮助组件以更可靠的方式执行。

通过XML进行参数配置

       Joomla!不是通过创建单独的表来处理扩展的配置信息,而是预留了一个字段来处理。变量通过扩展中的XML文件定义。XML文件也提供了默认值和约束这些参数。而且会自动地保存和返回这些值,而不需要手写查询语句。

打包和分发

       一旦所有的代码都编写完成,它是很容易打包给其他人使用的。所有文件的一个列表会被加入到XML文件中。任何需要建立数据表的查询语句也会包含在里面。所有文件被压缩成一个文件,然后这个扩展就可以被任何基于Joomla!的网站安装和使用。

分享到:
评论

相关推荐

    Joomla!_1.5 扩展开发

    1. **组件开发**:组件是Joomla! 最大的扩展类型,通常用于实现复杂的网站功能,如用户注册、电子商务、论坛等。开发者需要理解组件的结构,包括模型、视图、控制器(MVC)模式,以及XML配置文件的编写,以便定义...

    Joomla! 3: Beginner’s Guide

    Joomla! is one of the most popular open source Content Management Systems, actively developed and supported by a world-wide user community. It’s a free, fun, and feature-rich tool for anyone who ...

    [PACKT]出品:学习Joomla!1.5扩展开发

    1.5 扩展开发》是一本非常适合初学者入门的书籍,它不仅介绍了Joomla!的基础知识,还详细讲解了如何使用PHP语言来创建各种类型的扩展。无论你是刚接触Joomla!的新手还是有一定经验的开发者,都能从中获益匪浅。通过...

    Joomla! 用户宝典

    Joomla! A User's Guide: Building a Successful Joomla! Powered Website中文版。...扩展(Extending)消息,你可以跳到第六章,“扩展Joomla!”另外,附录里还额外介绍了关于Joomla!各个方面的一些有价值的信息。

    学习Joomla!3扩展开发 - 第三版源码.zip

    3扩展开发 - 第三版源码.zip 我要感谢Joomla的每个人!社区为了贡献和共同努力制作出可供所有人使用的 优秀软件,没有您的努力,这本书是不可能的。 非常感谢Andrew Eddie,自从我在2009年遇到他以来,他一直非常...

    Joomla! bible

    - **第三方资源**:除了官方资源外,还有大量的第三方教程、模板和扩展可供选择,极大地丰富了Joomla! 的生态系统。 通过以上介绍可以看出,《Joomla! Bible》是一本全面深入地介绍如何使用Joomla! 构建网站的书籍...

    Learning Joomla! 1.5 Extension Development Creating Modules, Components, and Plugins with PHP

    - **第一章**:概述了Joomla! 的工作原理,并介绍了本书将使用的示例项目。详细解释了三种类型的扩展及其作用。 - **第二章**:开始了示例项目的组件开发。包括数据库表的初始设置、后端工具栏的构建以及Joomla! ...

    Joomla! 插件开发指南

    ### Joomla! 插件开发指南知识点详解 ... 插件开发是一个涉及多个方面的复杂过程,但它为 Joomla! 用户提供了强大的扩展能力。对于想要进一步探索 Joomla! 开发的人来说,理解和掌握插件开发是非常重要的一步。

    Joomla! 2.5 Beginner's guide

    ### Joomla! 2.5 入门指南知识点详解 #### 关于本书 《Joomla! 2.5 Beginner's guide》是一本免费提供的入门书籍,旨在帮助初学者快速上手 Joomla! 平台。该书以 PDF 格式提供,采用多语言版本,包括英语、西班牙...

    Joomla!基本组件开发

    为了扩展Joomla! 的功能,开发者可以通过创建组件来实现自定义功能。组件是Joomla! 中最高级别的模块,它们可以独立存在并提供前端和后端的功能。在本文中,我们将深入探讨Joomla! MVC组件的开发过程,基于给定的...

    《Joomla!建站步步通》Joomla!组件模块安装配置视频培训教程

    【Joomla!建站步步通】是一套专为学习Joomla!内容管理系统(CMS)而设计的视频培训教程。Joomla!是一个开源的、基于PHP的网站构建平台,它允许用户通过直观的用户界面来创建、管理和维护动态网站。本教程涵盖了...

    Joomla.1.5扩展开发

    1.5扩展与框架开发》是一本由James Kennard撰写的书籍,旨在为专业程序员提供深入理解并开发Joomla!1.5扩展的全面指南。Joomla!是一个广泛使用的开源内容管理系统(CMS),适用于构建各种类型的网站。在1.5版本中,...

    Joomla! 1.5.6 中文稳定版

    **Joomla! 1.5.6 中文稳定版** Joomla! 是一款全球知名的开源内容管理系统(CMS),用于构建动态网站和管理网页内容。1.5.6 版本是针对1.5系列的一个重要更新,特别是对于中文用户而言,它提供了全面的中文支持,...

    Joomla! Template Design

    - **自定义组件**:教授如何开发自定义组件来扩展 Joomla! 的功能。 4. **主题与插件** - **主题选择**:介绍如何挑选合适的主题以匹配网站的整体风格。 - **插件集成**:讨论如何安装和配置插件以增强网站的...

    Joomla! 1.5 JavaScript jQuery.pdf

    扩展和插件,特别是通过JavaScript和jQuery增强Joomla!网站的功能和用户体验,是提高自身技能的重要方面。 jQuery是一个轻量级的JavaScript库,由John Resig于2006年发布,它简化了HTML文档遍历、事件处理、动画和...

    joomla扩展组件开发教程

    开发者在构建扩展时不仅要关注技术实现,还需要考虑如何使扩展更好地融入**Joomla!**生态系统,提供更好的用户体验。此外,了解**Joomla!**的架构和开发模式对于成功开发高质量的扩展至关重要。

    学习Joomla!3扩展开发 - 第三版_中文版10-2.pdf

    用户配置文件插件是一个很好的例子,在Joomla中添加!2.5 扩展了用户注册表单上的字段,并允许您捕获其他详细信息,如地址、服务条款、出生日期和网站。如果您想保留用户登录并注销网站时的日志,可以编写用户插件来执行...

Global site tag (gtag.js) - Google Analytics