网站案例研究:俄罗斯电视频道
一切始于2009年。我的父亲在 库尔干电视中心 工作,这是我们地区的电视台,是莫斯科中心的子公司。公司网站基于 TYPO3 CMS 构建,但非常糟糕。最终它崩溃了,并使用 Joomla 1.5 重建。那时我就介入了...
直到今天,我还不知道那个 TYPO3 (http://typo3.org/) 网站是如何工作的。它基于某个古老的 OpenSUSE 和 MySQL 版本。有一个负责人负责该网站,但他不需要做任何事情,因为一切都在正常工作。
没有什么是永恒的。2010年某一天,网站崩溃了。它显示了新闻列表,但你无法访问任何内容。网络管理员尝试了两个月,但未能修复该网站。我开始帮助他,并发现两个 MySQL 表中有一个错误,与 TYPO3 无关。我纠正了 MySQL 错误,网站又开始工作了。
但是,公司总经理不满意,并决定需要一个新平台,这个平台不需要数月时间来修复。因此,一家网络设计公司使用 Joomla 1.5 创建了新网站。完成后,我成为负责维护该网站的人。我想避免长时间的维修时间,因此我开始学习 Joomla,如何与 MySQL 一起工作,等等。当时我甚至不知道 Linux!
为了加快我的学习过程,我需要一个具体的任务 - 一个要完成的目标。那时,,Joomla 1.6 和 1.7 都已经发布。所有论坛都充满了像“帮助!我如何从 Joomla 1.5 切换到 1.6?”这样的问题。“哇!”我想,这是我检查我的 Joomla/Linux 学习技能的完美任务。
在接下来的六个月里,我几乎从头开始完全重写了该网站。有许多原因
- 一些扩展没有为 Joomla 1.6 做出适配。其中之一(com_rd_rss)仅设计用于 Joomla 1.0,并在 Joomla 1.5 中以兼容模式运行。
- 一些扩展非常强大,但速度极慢。我不想要那么多选项,所以我硬编码了一些东西以获得更多的速度。
- Joomla 1.5无法与php 5.3兼容,但phpMyAdmin(我用来处理MySQL数据库的)不支持php 5.2。我不得不来回切换php版本。Joomla 1.6支持5.3,因此php 5.2被弃用。
- 我将搜索替换为智能搜索
- 由于Mootools版本升级,需要重写JavaScript代码。
这样我就能大大缩减大部分扩展(50-70%)。网站看起来与Joomla 1.5版本相同,但几乎焕然一新。我使用Gentoo Linux,因为它具有灵活性。
以下是所使用的扩展列表
- Mod_jalendar,用于查看任何日期的文章
- Mod_lastupdate,用于查看网站的最新更新时间
- Com_rd_rss – 从1.0到2.5模块的完全重写,用于RSS订阅
- Mod_gk_weather – 显示来自Google天气API的天气
- Mod_roktabs – 在主页上实现一些效果
- Mod_allnews – 用于显示新闻
- Com_smfaq – 用于与用户沟通
- Com_jcomments – 用于评论文章(这是唯一没有重写的组件,因为它有一个更新的版本,并且更改太长)
- 插件Jw_allvideos,用于在网站上显示Flash视频
- 有趣的一点是“占位符”模块。它没有任何功能 – 它是空的。如果你查看主页 关于我们的网站,你会注意到组件完全不存在 – 这里只有模块。所以我们的模板会检查:如果“占位符”模块存在,则省略组件输出。
从那时起,网站偶尔有所变化。现在网站正在运行Joomla 2.5。
以下是最近实施的一些更改
- 由于Google决定关闭其天气API,因此重写了mod_gk_weather模块,并被迫将天气源更改为gismeteo.ru。
- 我编写了一个新的模块 – mod_slider – 它在主页底部显示一个滑块,并使用jQuery.FeatureList。同时使用Mootools和jQuery(无冲突)很遗憾,但我认为在Joomla 3.0/3.5中事情将会改变。
- 我开始将网站连接到社交网络 - Facebook、Vkontakte、Odnoklassniki(后两者是我们主要的俄罗斯社交网络)。我们很可能还会将我们的网站连接到Twitter。
我对未来充满热情。Joomla 3.0即将到来,它承诺许多有趣的功能 - Twitter Bootstrap及其.less编译器,对PostgreSQL的支持。当然,迁移到新版本将更容易。我喜欢这种工作。
在未来,我计划将网站分割成几个OpenVZ虚拟机,以增加其模块化,将数据库更改为PostgreSQL,并添加Sphinx搜索以替代智能搜索(以支持搜索中的语法)。当放弃对Mootools的支持并转向jQuery时,所有.js文件都需要再次重写。还有许多事情要做!
在Joomla社区杂志上发表的一些文章代表了作者对特定主题的个人观点或经验,可能并不与Joomla项目的官方立场一致
通过接受,您将访问由 https://magazine.joomla.net.cn/ 之外的第三方提供的服务
评论