织梦CMS后台可以完美的增加自定义文章类型,可以为自定义文章类型增加各种各样的字段属性。
但是由于大多数客户都不太理解文章类型,所以今天Joker讲解一下网站的文章类型有什么不同。
大家可以看到上图红框中的分类,这就代表着这个织梦CMS有四种不同的文章模型,其中普通文章与专题管理是DEDECMS自带的文章模型,那么其他两个自然就是自定义的文章模型了。
不同的文章类型有着不同的数据表,所以在写文章是切记看清所属分类在开始写,不然是无法在对应位置显示的。
之前梦飞Joker就犯了个错误,用了自定义的模板文件名,却没创建自定义文章类型,导致客户新增分类时,默认的是普通文章类型。
所以梦飞Joker立即去新增了文章模型并将所属文章移动到新增模型下,今天就来复盘一下。
切记:先在后台备份好数据库(系统--数据库备份/还原)
切记:先在后台备份好数据库(系统--数据库备份/还原)
切记:先在后台备份好数据库(系统--数据库备份/还原)
一、将旧文章全部转移到新模型下
原文章栏目ID为7, 新建模型ID为17(默认的文章模型为1,模型ID可以在内容模型管理最左侧看到),数据库中新模型附加表为dede_addon17(一般均为dede_addon加新建模型的ID,如果有修改可以查看附加表名称)。
那么已经找好了旧文章栏目ID并创建了自定义字段后,进入织梦CMS后台——系统——SQL命令行工具中输入以下SQL语句
INSERT INTO dede_addon17(aid,typeid,redirecturl,userip,body) SELECT aid,typeid,redirecturl,userip,body FROM dede_addonarticle where dede_addonarticle.typeid =7;
注:自定义字段中需要手动创建body字段,否则命令无法执行!
二、删除原栏目下的全部内容
第二步的是需要已经成功复制一份到新模型下了在进行操作,执行下方sql语句:
DELETE FROM `dede_addonarticle` WHERE typeid =7;
三、将旧文章关联模型的地方全部更新到新模型
意思就是DEDECMS有几张数据表记录了文章所属模型的记录,我们必须将这些记录修改到新的模型上。此处需要修改三张数据表的记录
update dede_arctiny set channel=17 where typeid=7; update dede_archives set channel=17 where typeid=7; update dede_arctype set channeltype=17 where id=7;
以上步骤操作完毕基本上就可以看到新模型下的文章出现了。
如果网站后台新模型栏目下没有出现迁移来的文章列表,则需要执行到系统——系统错误修复下执行修复工作:
然后再将data/cache/listcache下的缓存文件全部删除(建议在服务器或虚拟空间控制面板、FTP中操作):