或者说是一个论坛或者是blog也不为过,但是并非传统模式的论坛或blog,至于名字我感觉用discuss比较合适,意思是:讨论,议论
思路比较乱,先把暂时想到的写一下,这几天台北那边催的急,过几天有空了抽空再来开发吧!
传统模式的论坛需要设置分类,用户必须进入相应的分类才可以针对该分类发表文章
我希望不要建立分类,而是使用标签tag的模式,同一篇文章可以关联多个tag
点击tag之后能够显示该标签有关的文章
div+css布局,另外使用多国语言方式,UTF8,jQuery,aJax,MVC显示分离
针对多国语言的思路为:
程序开发时集成的语言是英文,如果用户没有设置除英文之外的语言,则程序会显示英文,反之则显示自己定制的语言.
实现方式的思路为:
Echo L("discuss");//默认输出为discuss
Echo L("about me");
如果没有定制其他的语言则直接输出discuss,定制了其他语言则输出其他语言,定制其他语言的方式为
$Lang=Array(
"discuss"=>"讨论",
"about me"=>"关于我们",
);
L这个function的初步构想为
function L($str){
if(如果已经定义了其他语言 and isset($Lang[$str])){
Echo $Lang[$str];
}else{
Echo $str;
}
}
后台可管理标签,管理标签的属性(如可见性,可发贴,可访问,可回复,可订阅等),用户,文章,统计,数据导入导出,模板,可管理.htaccess文件,Rss订阅,插件自定制功能等
针对插件自定制功能我的构想是:
用户可以根据自己的需求定制功能,如要显示某个人的回帖,或显示本周的新话题,或显示采集自其他网站的某些数据(如天气预报)等,都可以用这个功能扩充出来
操作思路如下:
1:首先可以在后台的textarea内输入PHP代码
2:然后填写该代码的作用文件所对应的模板(如:index.tpl,show.tpl)
3:然后针对这两个模板文件分别在其内加入标签(如:<!--最新话题:开始--><!--最新话题:结束-->)
插件功能的运作思路
if(被作用的文件index.tpl和show.tpl存在){
if(标签存在){
$showinfo=将PHP代码运行结果计算出来;
Echo "<!--最新话题:开始-->$showinfo<!--最新话题:结束-->"}
}
用户注册采用真实Email验证方式,另外使用facebook和yahoo的API接口进行注册.
程序需要自动发Email的部分如下:
当有人讨论的话题中包含自己的用户名时自动发email
当自己发表的话题被人关注时发email
当自己被人关注时发email
当自己回复的话题有更新时发email
当自己发表的话题有人回复时发email
当自己关注的话题有更新时自动发email
当自己关注的人有动作时自动发email
自己添加的tag审核通过之后可以发email
可能要对此写class来操作,前台用户的控制面板可以修改这些项目
另外用户所收到的email内也会加入取消关注的链接.
可以查看有谁关注了自己
可以方便的看到自己发表的话题
可以設置敏感詞過濾
站內動態和站內好友的短消息仿照facebook來做
每個人都可以設置自己不喜歡的人
后臺可以設置不受歡迎的人(此人的言論不受歡迎)
強大的搜索功能
頁面靜態化,SEO方便性等
可以以用户名的方式很容易访问到自己的空间(列出自己发表的话题和自己回复的话题)
用户在发话题的时候可以创建新的tag,后台可以把用户新创建的tag列出来进行进一步审核
发表话题的楼主可以把自己发表的话题关闭,关闭之后的话题不能继续跟贴讨论.
每一个话题都提供友好的转贴功能
发帖界面的思路:
点选tag,
填写标题
填写内容(ubb编辑器,包含回帖可见,插入代码,图片缩略浏览等标签)
附件上传
可行性思考
因为现在Firefox的普及,加上WebMail Notifier这个插件能够随时监控email的新动向,
这个程序开发出来之后基本上是一个小型的讨论区,感觉像很多人在写同一个blog
所以这个构思的普及是可行的.