织梦政府网站模板-织梦DedeCMS转WordPress网站图文教程 包含模板转换

这几天,大家都看到了DedeCMS收取授权费的消息织梦政府网站模板,话题还介绍了“秋后的结算!DedeCMS织梦收费的影响”,如何应对不想付费的网站,在事实上,它们可以转换成开源 WordPress 网站。 转移主题到这里,我给大家分享织梦DedeCMS到WordPress网站的图文教程。 对于之前的DedeCMS模板,这里也有相应的转换为WordPress模板的方法。

注:本文大部分内容取自网络,未经验证。 操作前请务必做好备份。

1.将DEDECMS文章标题等基本数据导入WordPress站点

织梦CMS的文章标题、正文和栏目分别存储在三个不同的数据表中,而WordPress则将文章标题和正文放在一个数据表中,栏目(类别)放在另一个数据表中。 接下来的工作,第一步就是制作一个生成Dreamweaving CMS的全站RSS文件,然后通过WordPress程序background-tools-import-RSS上传并导入生成的Dreamweaving全站RSS文件。

如何生成织梦CMS全站RSS文件?

操作方法:

1、找到dedecms的dede文件夹(后台文件夹)下的makehtml_rss_action.php文件,进行编辑,找到代码:

echo "完成所有文件更新!";

在其下方添加代码:

echo "浏览…";

作用是rss.xml文件生成后方便点击查看生成结果。

2、在dedecms的include文件夹中找到arc.rssview.class.php文件,编辑它,找到代码:

$murl = $GLOBALS['cfg_cmspath']."/data/rss/".$this->TypeID.".xml";

变成:

$murl = $GLOBALS['cfg_cmspath']."/rss.xml";

作用是修改生成的rss.xml文件的路径,使该文件保存在网站根目录下

再往下找到以下代码并将其删除:

$orwhere .= "And (arc.typeid in (".GetSonIds($this->TypeID,$this->TypeFields['channeltype']).") )";

3、进入后台-生成-更新RSS文件织梦政府网站模板,将“单个分类最大记录数”改为全站文章数,然后点击“开始更新”。 更新完成后,会在网站根目录下生成一个全站的rss.xml文件,可以通过网站域名/rss.xml查看。

附:如果生成的rss.xml文件有错误,找到根目录下templets文件夹中的plus文件夹中的rss.htm文件,编辑一下,找到代码:

变成:

注意:wordpress的编码为utf8,如果dedecms不是使用utf8,请在导入前将编码转换为utf8。

这样,wordpress就可以在wp_posts数据表上生成文章标题,在wp_terms数据表上生成文章类别,并将它们匹配到一起。 此外,通过RSS导入,wp_posts数据表还导入文章摘要、日期、自定义URL等数据。 但 RSS 不导入全文!

2、将萌知CMS文章全文导入到wordpress站点

织梦文章的数据存储在dede_addonarticle数据库的body字段中。 现在需要将body字段的内容传输到wordpress数据库的wp_posts数据库的post_content字段中。

这个转换需要用到一个桥梁——那就是dede_archives数据表,即dede_addonarticle上的body内容先传输到dede_archives,然后再从dede_archives传输到wp_posts的post_content。 这两次转换的匹配点就是织梦中的文章id和WordPress中已导入的文章标题(与织梦中的文章标题相同)。

具体操作步骤如下:

进入phpmyadmin,选择dedecms网站使用的数据库,在SQL输入框中执行以下SQL语句,将字段体添加到织梦数据库的dede_archives表中

ALTER TABLE dede_archives ADD body longtext NOT NULL 

然后执行以下SQL语句,将dede_addonarticle数据表中body字段的内容导入到dede_archives的body字段中。 该语句使用dede_addonarticle的辅助和dede_archives的id作为匹配点:

UPDATE dede_archives,dede_addonarticle
SET dede_archives.body = dede_addonarticle.body  
WHERE dede_archives.id = dede_addonarticle.aid

然后通过phpmyadmin导出函数导出dede_archives数据表,然后通过导入函数将数据表导入到wordpress网站使用的数据库中,使其与wp_posts数据库在同一个数据库中。

接下来,再次使用SQL语句将dede_archives的正文导入到wp_posts上的post_content中,以文章标题为匹配点(前提是文章标题唯一):

UPDATE wp_posts,dede_archives  
SET wp_posts.post_content = dede_archives.body  
WHERE wp_posts.post_title = dede_archives.title

至此,文章内容的转换就完成了!

3、织梦CMS文章点击量导入wordpress网站

织梦CMS中的文章有点击量(即文章的阅读量),所以不导入到wordpress中比较可惜。

在 WordPress 上安装 Simple Hit Counter 插件。 启用后,数据库中会生成wp_hitcount表。 在SQL输入框中执行以下语句,添加hits字段

ALTER TABLE wp_posts ADD hits INT(10) NOT NULL

执行以下SQL语句将dede_archives上的点击量导入到wp_posts上的点击量,仍然使用标题作为匹配点:

UPDATE wp_posts,dede_archives  
SET wp_posts.hits = dede_archives.click  
WHERE wp_posts.post_title = dede_archives.title

最后,执行以下SQL语句将wp_posts的点击量导入到wp_hitcount的点击量中。 这次用wp_posts的ID和wp_hitcount的pid作为匹配点:

UPDATE wp_posts,wp_hitcount 
SET wp_hitcount.hits = wp_posts.hits 
WHERE wp_hitcount.pid = wp_posts.ID

至此,点击数转换完成,接下来在模板中添加Simple Hit Counter插件调用代码。

附:因为之前使用过wp-postviews插件,所以我将织梦CMS文章的点击量换算成了wp-postviews插件的浏览量。 但由于插件需要在文章有浏览次数后在数据库中生成meta_key值,所以需要先在wp_postmeta表中添加对应的meta_key值。

执行以下SQL语句将文章ID导入到wp_postmeta中的post_id字段中:

INSERT INTO wp_postmeta(post_id) SELECT ID FROM wp_posts

执行以下SQL语句,将上面添加的post_id中的meta_key字段设置为null作为views值:

UPDATE wp_postmeta SET meta_key='views' WHERE meta_key IS NULL

执行以下SQL语句,将上面添加的post_id中meta_value字段的null值设置为0:

UPDATE wp_postmeta SET meta_value='0' WHERE meta_value IS NULL

然后将wp_posts的点击量导入到wp_postmeta数据表中meta_key字段的值视图对应的meta_value中,SQL语句如下:

UPDATE wp_postmeta,wp_posts 
SET wp_postmeta.meta_value=wp_posts.hits 
WHERE  wp_postmeta.post_id=wp_posts.ID AND meta_key='views'

至此,DedeCMS到WordPress网站的转换就完成了。接下来我们来说一下如何将Dreamweaving DedeCMS模板转换为WordPress网站模板

在转换之前,我们需要知道织梦程序和Wordpress程序在使用时都有自己独特的调用标签,所以我们在转换时,将织梦网站的调用标签替换为Wordpress的调用标签。