X-Spacee与Discuz!论坛整合详解
X-Space是一套Web2.0社区个人门户系统。它以BLOG功能为核心,结合了图片(相册)、收藏、书签(网摘)、好友圈等Web2.0应用元素,以及商品(商城)、文件(下载)、友情链接等互联网流行应用。
X-Space以满足社区用户展示自我、互动沟通为宗旨,自带“论坛同步”功能,能与Discuz!论坛系统紧密结合,形成“BBS+Blog”为一体的标准化Web2.0社区个人门户解决方案。使每一位已拥有Discuz!论坛的站长,均可轻松安装,为站内会员提供主流的Web2.0社区服务。
在X-Space安装完毕后,让我们开始将X-Space与Discuz!论坛整合。X-Space与Discuz!论坛无缝结合特色之一,能够使个人资料更新、帖子批量与X-Space同步,并与Discuz!用户完全结合的用户组权限功能。X-Space与Discuz!论坛是整合非常简单,按照以下步骤轻松完成。
一:X-Spacee与Discuz!论坛
第1步:为了提供给论坛用户更醒目的标志,我们提供了一些图片标志供站长使用(站长可以根据自己的喜好替换成其他图片标志)。到http://www.discuz.net/attachment.php?aid=40370下载图片。图片下载后,解压缩,将其上传或复制至论坛“images/common”目录下。
图1
图2
第2步:修改论坛“include/common.inc.php”文件。
找到“m.accessmasks”修改为“m.accessmasks,m.xspacestatus”。(此处共有两处“include/common.inc.php”,全部要做修改)
第3步:修改论坛模板templates/default/index.htm和templates/default/forumdisplay.htm。
将论坛模板中的“<td class="nav" width="85%" align="left" nowrap>”修改为“<td class="nav" width="65%" align="left" nowrap>”
将论坛模板中的“<td align="right" width="15%">”修改为“<td align="right" width="35%"><!--{if $xspacestatus}--><a href="X-Space访问地址/?action/panel" target="_blank"><img src="images/common/icon_x.gif" border="0" align="absmiddle">我的个人空间(new!)</a><!--{else}--><a href="X-Space访问地址/?action/register"><img src="images/common/icon_x.gif" border="0" align="absmiddle">开通我的个人空间</a><!--{/if}-->”
完成以上步骤后,整合结束。
二:整合中的常见问题
1、对新申请的Blog服务的用户会显示推送,而升级以前就申请个人空间的用户却不显示。
解决办法:下载http://www.discuz.net/attachment.php?aid=40459 文件,覆盖admin目录中admin_mybbs.php文件。
然后进入:“个人后台->论坛同步->同步个人信息”即可解决。
2、错误提示:
Time: 2006-4-17 2:10pm
Script: /bbs/viewthread.php
SQL: SELECT p.*, m.uid, m.username, m.groupid, m.regdate, m.lastactivity, m.posts, m.digestposts, m.oltime,
m.pageviews, m.credits, m.extcredits1, m.extcredits2, m.extcredits3, m.extcredits4, m.extcredits5, m.extcredits6,
m.extcredits7, m.extcredits8, m.email, m.gender, m.showemail, m.invisible, m.avatarshowid, m.xspacestatus, mf.nickname, mf.site,
mf.icq, mf.qq, mf.yahoo, mf.msn, mf.taobao, mf.alipay, mf.location, mf.medals, mf.avatar, mf.avatarwidth,
mf.avatarheight, mf.sightml AS signature, mf.customstatus
FROM cdb_posts p
LEFT JOIN cdb_members m ON m.uid=p.authorid
LEFT JOIN cdb_memberfields mf ON mf.uid=m.uid
WHERE p.tid='24256' AND p.invisible='0' ORDER BY dateline LIMIT 0, 10
Error: Unknown column 'm.xspacestatus' in 'field list'
解决办法:这个是因为升级过程中有字段没有添加导致请登陆论坛后台升级数据库:ALTER TABLE `cdb_members` ADD `xspacestatus` TINYINT( 1 ) DEFAULT '0' NOT NULL AFTER `accessmasks` 。