|
|
如何用Joomla!建造交友网站 |
|
| 作者: 白建鹏 | ||||||||||||
| 2007-04-01 | ||||||||||||
|
或许常来本站看看的朋友已经注意到了,这篇文章原先预告是要在3月30日发表的,之所以推迟到今天,多半原因是我觉得这个话题与今天的气氛比较相投——“用[[Joomla]]建造[[交友网站]]”这个命题不啻为[[愚人节]]的一个恶作剧。但是,仍然有人想要做成这件事,并且比较急迫,等待对口的[[组件]]发布已经来不及了。那么,我就尝试破解一下这个“[[Mission Impossible]]”。 随便在“[[百度图片搜索]]”里面搜一下“交友”,找到的结果差不多都是右图中所示的美女,或者帅哥。各种交友网站更是多如牛毛,其间不乏有挂羊头卖狗肉的——实际上就是国外的“[[Dating Club]]”,只不过中国人用含蓄的说法掩盖了同样的欲望。尽管看到网上交友不慎发生悲剧的消息频频见诸报端,我们暂且把“[[道义放两旁,利字摆中间]]”,从技术上探讨一下。 即便从技术角度来看,目前Joomla也不是建造交友网站的最佳工具。已经有很多成熟的[[交友系统]],至少我知道国外有一个[[Dolphin]]。当然,这些程序几乎都是要钱的。 如果要用[[Joomla]]来建造一个交友网站,就必须先考虑一下准备实现哪些功能:一般来说,会员制当然是少不了的,每个会员必须提供性别、年龄、居住地、[[属相]]、[[星座]]、兴趣、学历、收入等等个人信息(部分可选),最后,一张(甚至多张)酷照或者玉照总是少不了的。同时,个人信息中的很多项必然成为搜索的条件。 另外,为了方便会员之间交流,建设一个[[论坛]]很有必要;为了上传更多图片,还需要一个[[图库]],一个允许会员拥有个人[[电子相册]]的图库;为了发送私密信息,还需要一个[[站内信]]([[PMS]])系统;会员之间可能要形成一些小圈子,那么一个“好友名单”系统也需要考虑。 想来想去,使用[[Mosets Tree]]组件来做主干比较合适——看看Joomla官方扩展库,就是用这个组件做的,我们把扩展变成人就行了,可以评分,可以配照片,留言,可以收藏(加为好友),还有最新添加、随机展示、多条件搜索、评分最高等等功能。可惜,这个组件是收费的。 我们只说免费的。Community Builder就必须安装,并且作为主干。论坛使用JoomlaBoard,站内信使用Missus,正好利用Missus针对C.B.的插件可以做到每个会员个人资料页中显示“发送站内信”的链接。以上三者可以很好地配合。 不过,C.B.默认的字段太少,比如连“性别”都没有(晕!Joomla也没有,难道国外同性恋普及到人们可以“相忘于性别”了吗?)。所以,必须在C.B.中手动添加性别这个字段。其他的属相、星座等等,很多字段C.B.根本就没有,但是C.B.的伟大之处就在于它预留了很大的扩展空间,我们可以自己一一添加这些字段。提醒一下:性别这个选项必须有三个,男、女、保密,因为要充分尊重会员的隐私权。如果要强制选择某个字段,比如年龄(可以设置成年龄段,方便选择),就将该字段设置为“必填”,同时选择“在注册时显示”。其他各个字段也有各自的注意事项,我就不多说了,有心者自己研究吧。 下面说图库。本站曾经推荐过一个RSgallery2图库组件,可以允许会员拥有自己的个人相册;如果你觉得功能过于简单,那么我推荐[[Gallery 2]],这个并非Joomla的组件,而是一个[[开源]]([[Open Source]])图库程序,通过针对Joomla的桥接器Gallery2 Bridge可以与Joomla很好地同步工作。 Gallery2的缺点是,它不是Joomla的扩展,因此可能在外观风格上难以统一,或者在以后升级时带来l麻烦。所以,我再推荐一个优秀的图库组件,zOOmMedia。这个组件不仅可以管理图片,创建相册,还允许上传其他媒体,比如[[视频]]、[[PDF]]文档等等。如果你想要允许会员上传一段[[视频秀]],或者[[甜歌秀]]音频文件,那么这个组件再合适不过了。而且,还有在C.B.个人资料页上链接到该会员zOOmMedia媒体库的插件。 当然了,如果要允许会员上传大量视频片断,恐怕网站空间和[[服务器带宽]]都吃不消。一个聪明的解决方案是:鼓励会员将视频上传到[[Youtube]]、[[Google Video]]这样的免费[[视频分享网站]],然后通过Mike开发的[[AJAX Sandbox CB plugin]](收费插件)就能在会员资料页上显示该会员上传(或者喜欢的)视频。免费方案是:建立一个“视频”字段,允许会员自己填写多个视频URL上去,其他人点击即可打开。 “好友名单”和“评论/评分”功能可以通过相应的C.B.插件来完成,C.B.本身就有一个“连线”功能,这就是好友圈。C.B.的“连线”还允许选择是否公开让其他人看到你的好友列表。这个“连线”功能还可以创建不同的好友组,比如家人、好友、同学、同事等等。在Missus站内信组件里,也有一个“联系人”功能,稍加修改就能变成“好友圈”。而且这个联系人功能还可以建立小组,那么“好友圈”也就能够有多个类型。[[cbprofilebook]]这个插件还能够在每个会员的个人资料页上建立一个微型留言本,允许别人给该会员直接留言,同时这个插件还带有投票功能。 其他杂项:比如,想给会员照片上添加网站水印?没问题,C.B.有这样的插件;想展示“今天过生日的会员”?没问题,C.B.也有对应模块;想要显示该会员的各种即时聊天软件(IM)如[[MSN Messenger]]、[[Skype]]的在线状态?C.B.也能做到;想要记录每个会员登录的IP地址?也有插件; [[Mikko Rönkkö]]曾经开发了一个组件,能够更好的控制在C.B.资料页中对访客显示什么内容,对会员显示什么内容,对高级会员显示什么内容。可惜,这个组件是收费的。 让我们看看别人的成果吧,这个网站使用了C.B.,但是很明显展示的内容非常丰富,包括该会员的照片,她的好友照片,她在论坛所发的帖子,她在网站所发表的文章,还有最近来访问过她的资料的会员列表!在这个美女的照片下面,还有一个显眼的评分系统,其他会员可以对她的美貌抑或[[综合实力]]给与评价。 最后,要解决一个问题,就是如何方便会员搜索——找到自己心仪的对象? 这是最难的一关。就目前来讲,Joomla的搜索功能并不涉及C.B.的数据库,而C.B.自带的搜索功能只有一个简单的输入框,无法根据多条件搜索。跟我们一样,有很多人在C.B.的官方论坛里面也探讨过如何实现针对多个字段的高级搜索,现在好像有了一点进展。
除了高级搜索,也许在网站侧边栏放置一个快速搜索(Quick Search)也是很受欢迎的。比如,有人在 http://www.edatinginfo.com 网站就见过左图所示的搜索模块。很显然该网站也是Joomla建造的。遗憾的是,没有找到制作这个模块的代码。假如你懂得[[MySQL]]数据库的查询方法,以及一点[[php编程]]技术,我想制作这么一个模块也不是很难。 这个任务看起来基本完成了。很多细节来不及说明,因为我也没有做过,纯属[[纸上谈兵]]罢了。如果你看了不解恨,就当作4月1日的礼物好了。如果哪位有兴趣继续开发,欢迎到论坛继续讨论。
|
||||||||||||
| < 上一篇 | 下一篇 > |
|---|