扩展更新通知系统
自Joomla! 2.5推出以来,现在可以为Joomla和第三方扩展提供更新通知系统。在本文中,我们将了解如何使用原生Joomla更新通知系统来处理所有扩展(除模板外)。
登录到您的网站管理端,您将看到Joomla和扩展的两个图标,它们将通知您当前的状态。
为了更容易理解,在这个例子中,让我们假设我们正在处理一个系统插件。要使用更新通知系统,我们必须从以下三个方面着手:
- 扩展清单(添加标签)
- 清单更新(从头创建)
- 版本号
扩展清单
在扩展清单文件中,我们必须以这种方式插入updateserver
标签:
<updateservers>
<server
type="extension"
priority="1"
name="System - Detector">
http://alikonweb.it/update/plg_system_detector_update.xml</server>
</updateservers>
如你所见,updateservers
标签的定义非常简单,它由一个或多个服务器标签组成。如果我们详细分析server
标签,它由以下属性组成:type、name和priority。type属性的可能的值有:(collection, extension)。你可能已经注意到,“collection”用于Joomla,因此,对于我们的目的,属性值是“extension”。属性名称必须与扩展清单文件中的标签名称使用的值相同。服务器标签指定了清单更新的URL,即查找有关你的扩展更新(版本、日期等)信息的位置。
更多信息请参阅官方文档:扩展清单文件。
清单更新文件
<updates>
<update>
<name>System - Detector</name>
<element>detector</element>
<client>0</client>
<type>plugin</type>
<folder>system</folder>
<version>1.0.0</version>
<downloads>
<downloadurl type="full" format="zip">
http://alikonweb.it/update/plg_system_detector0.zip
</downloadurl>
</downloads>
<targetplatform name="joomla" version="2.5"/>
</update>
<update>
<name>System - Detector</name>
<element>detector</element>
<client>0</client>
<type>plugin</type>
<folder>system</folder>
<version>1.0.1</version>
<downloads>
<downloadurl type="full" format="zip">
http://alikonweb.it/update/plg_system_detector1.zip
</downloadurl>
</downloads>
<targetplatform name="joomla" version="2.5"/>
</update>
</updates>
在更新和更新标签中嵌套,你可以看到它与扩展清单标签的紧密相关性。标签名称、元素和文件夹必须相同。一个重要的标签是downloadURL,它指定了查找更新扩展包的位置。
版本号
Joomla使用的版本号方法是“PHP标准化版本号字符串”,例如当前Joomla的版本2.5.6,格式为“主要.次要.发布”。因此,我们扩展必须使用相同的方法。在上面的示例中,我在版本标签的值中使用了1.0.0。
您可能已经注意到在清单更新的示例中,有两个更新标签。第一个指的是版本1.0.0,第二个指的是版本1.0.1,因此,对于我们扩展的每个新版本,我们将在清单更新文件中添加一个更新标签的新实例。
工作原理
安装新的“一键更新”扩展后,假设版本是1.0.0。现在我们已启用Joomla更新通知系统,使其也能与我们的扩展更新一起工作。
假设我们制作了我们扩展的新版本,例如1.0.1,以提醒所有扩展安装。我们只需在清单更新文件中添加更新标签的新实例即可。
当您以管理员身份登录时,您将在图标(右上角的5)中看到一个红色数字,表示有可用更新的扩展数量。点击它将带您到扩展管理器菜单。检查扩展并点击更新,操作完成。
有关更多信息,请参阅官方指南
《Joomla社区杂志》上发布的一些文章代表了作者在特定主题上的个人观点或经验,可能不代表Joomla项目的官方立场
通过接受,您将访问https://magazine.joomla.net.cn/之外的第三方外部服务
评论