本帖最后由 lerado 于 2009-5-3 17:22 编辑
2009年5月3日发布SupeSite 7.0采集器可以采集时间修改程序
程序版本: SupeSite 7.0 ( 20090422 ) GBK
本修改程序作用是,
在SS源采集器中把 预定义发布时间 设置成可以设置采集时间规则的项目。
采集到文章发布的时间后,自动存入预定义发布时间,发布时
文章的添加时间为采集到的文章添加时间。
效果图:
注意:
请在修改成程序前,备份好要修改的文件。
一、修改文件:
1、admin/admin_robotmessages.php 这个文件只加入了一个地方,
323行处------ echo label(array('type'=>'text', 'alang'=>'robotmessage_title_dateline', 'text'=>$showvalue['dateline']));
复制代码 ---
修改为:---- echo label(array('type'=>'text', 'alang'=>'robotmessage_title_dateline', 'text'=>sgmdate($showvalue['dateline'])));
复制代码 ---
作用是: 查看采集到的文章时,看到的是格式化后的时间,便于查看,其实这地方也可不用修改,不影响采集和发布。
效果图:
2、admin/admin_robots.php 主要修改程序:
(1)122行 ---- 'defaultdateline' => empty($_POST['defaultdateline']) ? 0 : sstrtotime($_POST['defaultdateline'])
复制代码 ---------
修改为:------- 'defaultdateline' => striptbr($_POST['defaultdateline'])
复制代码 --------
(2)942行 ----- $thevalue['defaultdateline'] = sgmdate($thevalue['defaultdateline']);
复制代码 修改为:---- $thevalue['defaultdateline'] = $thevalue['defaultdateline'];
复制代码 ------
(3)1664行 - 1667行---- <tr id="tr_dateline">
- <th>$alang[robot_dateline]</th>
- <td><input name="defaultdateline" type="text" id="defaultdateline" size="30" value="$thevalue[defaultdateline]" readonly/><img src="$s_url/admin/images/time.gif"/> <a href="javascript:;">$alang[robot_defaultdateline_delete]</td>
- </tr>
复制代码 ----
修改为:----
- <tr id="tr_dateline">
- <th>$alang[robot_dateline]$alang[robot_robottime]</th>
- <td><textarea id="defaultdateline" name="defaultdateline" style="width:60%;" rows="4">$thevalue[defaultdateline]</textarea>
- <img src="$s_url/admin/images/time.gif"/>
- <a href="javascript:;">$alang[robot_defaultdateline_delete]</a><br />
- $alang[robot_robottime_info]</td>
- </tr>
复制代码 ---------
(4)2056行 - 2061行 ----
- //DATELINE
- if(empty($rulearr['defaultdateline'])) {
- $msgarr['dateline'] = $_SGLOBAL['timestamp'];
- } else {
- $msgarr['dateline'] = intval($rulearr['defaultdateline']);
- }
复制代码 ------
修改为:-------
- //DATELINE 添加时间识别
- if(empty($rulearr['defaultdateline'])) {
-
- $msgarr['dateline'] = $_SGLOBAL['timestamp'];
-
- } else {
- //$msgarr['dateline'] = intval($rulearr['defaultdateline']);
- //添加时间识别
- if($getsubject && $nextprogress && !empty($rulearr['defaultdateline'])) {
- if(preg_match("/\[time\]/", $rulearr['defaultdateline'])) {
- $fromarr = pregmessage($messagetext, $rulearr['defaultdateline'], 'time');
- } else {
- $fromarr[0] = $rulearr['defaultdateline'];
- }
- $msgarr['dateline'] = sstrtotime($fromarr[0]);
- if($msgarr['dateline']) {
- showprogress('['.$mnum.'] [<b>'.$msgarr['dateline'].'</b>] '.$alang['robot_robot_deal'].'<b>'.$alang['robot_robot_dateline'].'</b>'.$alang['robot_robot_success']);
- } else {
- showprogress('['.$mnum.'] '.$alang['robot_robot_deal'].'<b>'.'<b>'.$alang['robot_robot_dateline'].'</b>'.$alang['robot_robot_failed']);
- }
- }
- }
复制代码 ------------
3、language/admincp.lang.php
程序提示信息文件:
在 1891 行处添加:----
- 'robot_robottime' => '添加时间识别规则<p>截取的地方加上<input type="input" name="tmp[]" size="10" value="[time]" disabled="disabled" /></p><p>用 * 来代替任意字符、换行、回车</p>',
- 'robot_robottime_info' => '当规则中不出现"标记符([time])"时,此值为"固定值"',
复制代码 --------
修改文件 完成。。。。
二、修改数据库结构
注意:
修改数据库表supe_robots前请备份好supe_robots数据。
并在后台,导出所有 采集器 。---重要:因为下面修改要是用我上传的文件恢复的话,
采集器将清空,修改完数据库后,再导入 采集器 即可。。。。
修改表supe_robots ,只修改defaultdateline一个字段属性,
因为原来的defaultdateline为数值型(int)(时间用)字段,要用规则,就要修改为字符型(text)。
如果你比较懂MYSQL,可在PHPMYADMIN修改,如果你不是太懂,请使用我上传的
备份文件,上传到网站数据库备份目录,在网站后台进行手动恢复,就OK了。
备份文件:
提示:
如果你网站的版本(程序版本: SupeSite 7.0 ( 20090422 ) GBK)和我的一样,且没有做过
什么修改,可直接用我上传的文件进行覆盖,
admin ----|-admin_robotmessages.php
|-admin_robots.php
language ---|-admincp.lang.php
修改文件:
现在免费放出,同志们,用吧,请支持一下我的网站,谢谢。
手机技术服务区 |