dedecms5.7转帝国CMS系统之tag标签导入

首先本文不是介绍文章数据导入的,那个转换帝国CMS官方有插件的《dedecms5.5 到 帝国CMS6.0 数据转换程序》,百度下就能找到,写是写的dedecms5.5但是5.7一样能用,但是帝国这边就不要安装现在的最新版本7.2了,安装帝国CMS6.0先转换成功后再一步一步升级到帝国7.2。这个自己按步骤折腾就可以了。本文主要记录转换后tag的导入,因为官方这个转换工具是没有导入tag的,转换成功并升级到7.2以后,在e\extend\updateTag下面建个php文件,代码内容如下,然后在浏览器中访问就行了,代码没有分组执行,如果文章过多的话可能会出现超时。注意完成后删除该文件。01
<?php
02
require('../../class/connect.php'); //引入数据库配置文件和公共函数文件
03
require('../../class/db_sql.php'); //引入数据库操作文件
04
require('../../class/functions.php'); //公共方法
05
require("../../data/dbcache/class.php"); //栏目缓存
06
$link=db_connect(); //连接MYSQL
07
$empire=new mysqlquery(); //声明数据库操作类
08

09

10
$sql=$empire->query("select * from {$dbtbpre}ecms_news order by id desc limit 1000000"); //查询新闻表最新10条记录
11
while($r=$empire->fetch($sql)) //循环获取查询记录
12
{
13
//echo"标题:".$r['newstime']."<br>";
14
echo"标题:".$r['title'].$r['id']."<br>";
15
$tagstr = array();
16
$tsql=$empire->query("select * from dede_taglist where aid=".$r['id']." limit 100"); //
17
while($tr=$empire->fetch($tsql)) //循环获取查询记录
18
{
19
if($tr['tag'] != ''){
20
$tagstr[] = $tr['tag'];
21
}
22
}
23
if(count($tagstr) > 0){
24
if(eReturnInfoTags($r[classid], $r[id], 1) == ''){
25
echo $tags = implode(',', $tagstr);
26
eInsertTags($tags,$r[classid], $r[id],$r[newstime]);
27
$indexsql=$empire->query("update {$dbtbpre}ecms_news_data_1 set infotags='$tags' where id='$r[id]' limit 1");
28
}
29
//
30

31

32
}
33
echo '<hr>';
34
}
35
db_close(); //关闭MYSQL链接
36
$empire=null; //注消操作类变量
37
?>

 

 

没有账号? 注册忘记密码?