从2.4升级到了2007,所有文章都在文章频道下面,如果文章多的话,就失去了分表储存的意义,还不如不升级直接用2.4.

看了一下数据库,很好解决的.

步骤:

一,连接两个表

到数据库里面看一下就会发现储存文章的表多了一个phpcms7_article_2和phpcms7_article_data_2.
这两个表一个是文章的信息,一个是文章的内容content.要做的关键就是把它们连接起来.

执行以下语句:
1,在phpcms7_article_data_2表上新建一个catid字段,用catid来连接:
ALTER TABLE `phpcms7_article_data_2` ADD `catid` INT( 11 ) NOT NULL AFTER `articleid` ;

2,连接起来
UPDATE (phpcms7_article_data_1 LEFT JOIN phpcms7_article_1 ON phpcms7_article_data_1.`articleid` = phpcms7_article_1.`articleid`)
SET phpcms7_article_data_1.catid = phpcms7_article_1.catid

二,转移文章

1,转移文章相关信息

insert into phpcms7_article_2
(`articleid`,`catid`,`specialid`,`typeid`,`title`,`titleintact`,`subheading`,`style`,
`showcommentlink`,`introduce`,`keywords`,`author`,`copyfrom`,`paginationtype`,
`maxcharperpage`,`hits`,`comments`,`thumb`,`username`,`addtime`,`editor`,`edittime`,
`checker`,`checktime`,`templateid`,`skinid`,`arrposid`,`status`,`listorder`,`arrgroupidview`,
`readpoint`,`ishtml`,`htmldir`,`prefix`,`urlruleid`,`islink`,`linkurl`)
select
`articleid`,`catid`,`specialid`,`typeid`,`title`,`titleintact`,`subheading`,`style`,
`showcommentlink`,`introduce`,`keywords`,`author`,`copyfrom`,`paginationtype`,
`maxcharperpage`,`hits`,`comments`,`thumb`,`username`,`addtime`,`editor`,`edittime`,
`checker`,`checktime`,`templateid`,`skinid`,`arrposid`,`status`,`listorder`,`arrgroupidview`,
`readpoint`,`ishtml`,`htmldir`,`prefix`,`urlruleid`,`islink`,`linkurl`
from
phpcms7_article_1
where `catid`=XX

2, 转移文章内容

insert into phpcms7_article_data_3
(`articleid`,`content`)
select
`articleid`,`content`
from
phpcms7_article_data_1
where `catid`=XX

三, 修改栏目所属频道

UPDATE `phpcms7_category` SET `channelid` = ‘2′ WHERE `catid` =XX

四,删除原频道里的文章

delete from  `phpcms7_article_1` WHERE `catid`=XX
delete from  `phpcms7_article_data_1` WHERE `catid`= XX

说明:

1,第一步只要做一次就行了.

2,转移前要先把栏目更改为顶级栏目,可以把原顶级栏目文章数为0的栏目删了.

3.每次只能转移一个栏目.

4,每转移一个栏目就要执行上面步骤里的二,三,四一次 .