Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

SS7.5修改为可以采集发布时间

[复制链接]
helosh 发表于 2010-3-3 21:06:49 | 显示全部楼层 |阅读模式
本帖最后由 helosh 于 2010-3-3 21:40 编辑

今天刚刚升级到7.5,在7.5采集时间还是没有更新,只能修改下了。
官方7.5之前就有人在喊希望支持没有时间字段的采集,现在稍微修改下也可以实现。
参考7.0版本https://discuz.dismall.com/thread-1288033-1-1.html
上犹生活网www.341200.com

第一步:修改admin/admin_robotmessages.php 文件
1、修改查找,在347行:
  1. echo label(array('type'=>'text', 'alang'=>'robotmessage_title_dateline', 'text'=>$showvalue['dateline']));
复制代码
修改为:
  1. echo label(array('type'=>'text', 'alang'=>'robotmessage_title_dateline', 'text'=>sgmdate($showvalue['dateline'])));
复制代码
第二步:修改admin/admin_robots.php 文件
1、查找修改,在141行:
  1. 'defaultdateline' =>  empty($_POST['defaultdateline']) ? 0 : sstrtotime($_POST['defaultdateline'])
复制代码
修改为:
  1. 'defaultdateline' =>  striptbr($_POST['defaultdateline'])
复制代码
2、查找修改,在961行:
  1. $thevalue['defaultdateline'] = sgmdate($thevalue['defaultdateline']);
复制代码
修改为
  1. $thevalue['defaultdateline'] = $thevalue['defaultdateline'];
复制代码
3、查找修改,在1690行:
  1. <tr id="tr_dateline">
  2.                                                 <th>$alang[robot_dateline]</th>
  3.                                                 <td><input name="defaultdateline" type="text" id="defaultdateline" size="30" value="$thevalue[defaultdateline]" readonly/><img onclick="getDatePicker('defaultdateline', event, 21)" src="$s_url/admin/images/time.gif"/>&nbsp;<a href="javascript:;" onclick="$('defaultdateline').value='';">$alang[robot_defaultdateline_delete]</td>
  4.                                         </tr>
复制代码
修改为:
  1. <tr id="tr_dateline">
  2.                     <th>$alang[robot_dateline]$alang[robot_robottime]</th>
  3.                     <td><textarea id="defaultdateline" name="defaultdateline" style="width:60%;" rows="4">$thevalue[defaultdateline]</textarea><img onclick="getDatePicker('defaultdateline', event, 21)" src="$s_url/admin/images/time.gif"/>&nbsp;<a href="javascript:;" onclick="$('defaultdateline').value='';">$alang[robot_defaultdateline_delete]</td>
  4.                     </tr>
复制代码
4、查找修改,在2083行。
  1. //DATELINE
  2.         if(empty($rulearr['defaultdateline'])) {
  3.                 $msgarr['dateline'] = $_SGLOBAL['timestamp'];
  4.         } else {
  5.                 $msgarr['dateline'] = intval($rulearr['defaultdateline']);
  6.         }
复制代码
修改为:
  1.         //DATELINE 添加时间识别
  2.         if(empty($rulearr['defaultdateline'])) {
  3.                
  4.                 $msgarr['dateline'] = $_SGLOBAL['timestamp'];
  5.                
  6.         } else {
  7.                 //$msgarr['dateline'] = intval($rulearr['defaultdateline']);
  8.                 //添加时间识别
  9.          if($getsubject && $nextprogress && !empty($rulearr['defaultdateline'])) {
  10.                 if(preg_match("/\[time\]/", $rulearr['defaultdateline'])) {
  11.                         $fromarr = pregmessage($messagetext, $rulearr['defaultdateline'], 'time');
  12.                 } else {
  13.                         $fromarr[0] = $rulearr['defaultdateline'];
  14.                 }
  15.                 $msgarr['dateline'] = sstrtotime($fromarr[0]);
  16.                 if($msgarr['dateline']) {
  17.                         showprogress('['.$mnum.'] [<b>'.$msgarr['dateline'].'</b>] '.$alang['robot_robot_deal'].'<b>'.$alang['robot_robot_dateline'].'</b>'.$alang['robot_robot_success']);
  18.                 } else {
  19.                         showprogress('['.$mnum.'] '.$alang['robot_robot_deal'].'<b>'.'<b>'.$alang['robot_robot_dateline'].'</b>'.$alang['robot_robot_failed']);
  20.                 }
  21.          }
  22.         }
复制代码
第三步:修改language/admincp.lang.php 文件
在1681行下面添加
  1. 'robot_robottime' => '添加时间识别规则<p>截取的地方加上<input type="input" name="tmp[]" size="10" value="[time]" disabled="disabled" /></p><p>用 * 来代替任意字符、换行、回车</p>',

  2.         'robot_robottime_info' => '当规则中不出现"标记符([time])"时,此值为"固定值"',
复制代码
第四步:修改数据库结构
需要修改数据库表supe_robots,可以在phpmyadmin中修改他的结构。
defaultdateline字段类型数值型(int)更改为字符型(mediumtext)。长度/值1为空。
如果你没有进行修改这3个文件,可以上传下面这个文件直接覆盖到根目录。

请各位多多支持我的小站:
上犹生活网www.341200.com

评分

1

查看全部评分

qdcaishen 发表于 2010-3-3 23:14:48 | 显示全部楼层
沙发支持你下
回复

使用道具 举报

花花世界2012 发表于 2010-3-4 14:56:08 | 显示全部楼层
贡献个IP给LZ。。。。。。
回复

使用道具 举报

7bow 发表于 2010-3-8 14:36:26 | 显示全部楼层
好帖,顶,寻她千百度,黯然回首却在灯火阑珊处
回复

使用道具 举报

seahorse75 发表于 2010-3-29 17:00:33 | 显示全部楼层
好贴,收藏
回复

使用道具 举报

zpatu 发表于 2010-3-31 00:29:38 | 显示全部楼层
在最后一步修改数据库的时候,出现以下错误:(本身已经有数据了)

错误
SQL 查询:

ALTER TABLE `supe_robots` CHANGE `defaultdateline` `defaultdateline` MEDIUMTEXT UNSIGNED NOT NULL DEFAULT '0'

MySQL 返回:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNSIGNED NOT NULL DEFAULT '0'' at line 1
回复

使用道具 举报

zpatu 发表于 2010-3-31 00:44:05 | 显示全部楼层
经过测试,第四步应该如下:
第四步:修改数据库结构
需要修改数据库表supe_robots,可以在phpmyadmin中修改他的结构。
defaultdateline字段类型数值型(int)更改为字符型(mediumtext)。长度/值1为空。整理为utf8-general-ci。属性为空。null为not null(如果有些没日期的话,这个就要改成null了。) 默认2为空
回复

使用道具 举报

qzshene 发表于 2010-4-4 20:58:20 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

sdccf 发表于 2010-4-9 15:54:32 | 显示全部楼层
经过测试,第四步应该如下:
第四步:修改数据库结构
需要修改数据库表supe_robots,可以在phpmyadmin中修 ...
zpatu 发表于 2010-3-31 00:44



   修改数据库的时候出错

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNSIGNED CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT ''' at line 1
回复

使用道具 举报

sdccf 发表于 2010-4-9 16:23:49 | 显示全部楼层
今天刚刚升级到7.5,在7.5采集时间还是没有更新,只能修改下了。
官方7.5之前就有人在喊希望支持没有时间字 ...
helosh 发表于 2010-3-3 21:06


我怎么按照这样修改了,不行啊,是不是被采集的文章,时间格式是XXXX年XX月XX日这样的格式才行? 类似2010-04-09这样的是不是不行啊?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-24 04:25 , Processed in 0.030235 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表