杭州神话信息技术有限公司
标题:
论坛同步到微博,教你怎么修改来源!【技术帖】
[打印本页]
作者:
yachtxiao
时间:
2011-10-9 22:26:10
标题:
论坛同步到微博,教你怎么修改来源!【技术帖】
本帖最后由 yachtxiao 于 2011-10-9 23:05 编辑
注意:本帖适用V3.0.0版本的记事狗。已经升级的朋友,无须再修改了。
基本上,大家的微博都升级到V3了,那么API应用也在后台开放了。
然后官方出了从DZ论坛同步帖子到微博的插件,受用无穷啊!
但是囧的是,同步过去,在微博上显示的来源是“来自API”,实在是不美观。
咱就研究了下,发现在“[前缀]_topic”表里面,用于显示来源的字段“item”始终显示的是api,这也就是为什么微博中显示的来源都是“来自api”了。那么要修改它怎么修改,当然不能手动修改数据库,得从发微博的类里面修改,让它自动对应你的app名字。
下面直接写教程,需要技术人员操作,当然我尽量写得让新手也能搞定!
1、找到include/logic/topic.logic.php这个文件,在这个文件里面是发微博、修改等等函数。找到“$data['item'] = $item”这一行,在这一行前面写一个判断。
if($item_id>0){
$sql = "select * from `".TABLE_PREFIX."app` where `id`=".$item_id;
$query = $this->DatabaseHandler->Query($sql);
$row = $query->GetRow();
}
复制代码
然后呢,将“$data['item'] = $item”就可以直接改为“$data['item'] = $row['app_name']”,不要忘了在行尾加分号。
2、第一步修改了发微博函数的写入语句,然后前台输出要查找,也要将对应的转换语句给修正过来,不然它还是默认地输出“来自api”。
找到“elseif('api'==$topic['from'])”这个判断分支。如果你懂程序,你就会知道这个分支里面写的是来源的变量。
把他们改为:
elseif('api'==$topic['from'])
{
$topic['from_string'] = $topic['item'];
$topic['from_html'] = '来自 '.$topic['item'];
}
复制代码
这样的话,你同步过来之后就会显示你的来源是你的应用名字,不过我这里的记事狗版本后台API管理没有开启应用地址,所以显示的来源是没有连接跳转的,我会继续搞,反正记事狗数据库里面应用地址字段已经存在,不会太麻烦。
当然,欢迎大家给我找茬。
还有有什么好玩的插件创意,也可以告诉我~
我的邮件地址是:
fuck@fackyou.org
欢迎来信!
该帖已经同步到记事狗微博
yachtxiao的微博
作者:
军魂依旧
时间:
2011-10-9 22:52:14
按方法修改了,还是不显示来源啊!而且API详情中修改API信息 显示来自详情?选择是保存后还是否!
作者:
yachtxiao
时间:
2011-10-9 23:02:58
军魂依旧 发表于 2011-10-9 22:52
按方法修改了,还是不显示来源啊!而且API详情中修改API信息 显示来自详情?选择是保存后还是否!
在后台设置了显示来自详情,我看了最新版的代码,按照代码是可以显示的。
除非你topic表里面的show_from字段没有成功地被修改,或者,你没有升级成功。如果你是技术员,你可以去看一下那个字段。
程序是没有问题的。
作者:
33207
时间:
2011-10-23 21:33:27
不回帖都不行,顶你。!
作者:
ram2000
时间:
2011-10-24 08:57:52
不回帖都不行,顶你。!
欢迎光临 杭州神话信息技术有限公司 (http://www.cenwor.com/)
Powered by Discuz! X2