首页 > CMS > Wordpress > 正文

把一个WordPress站点的文章导入另一个WordPress站点的方法

2024-08-30 19:08:06
字体:
来源:转载
供稿:网友

光看标题你可能不是太清楚具体的情况,所以三好菌就先把自己的需求详细描述一下:

三好菌想要放弃之前的“我爱Windows8”网站,但是其中的某些资源(例如“Windows8主题”)在Windows10中依然有效,并且这些文章都是三好菌一个字一个字码出来的,所以全部丢弃着实可惜。于是,三好菌就想把其中的部分文章导入到“Win10专业网”中。但是文章的分类目录、标签、标题、正文部分内容,甚至固定链接都需要做修改才行。

还是以把“我爱Windows8”网站的“Win8主题”分类目录的文章导入“Win10专业网”的“Win10主题”分类目录为例,需要修改的地方有:

  • 分类目录:“Win8主题”改成“Win10主题”

  • 标签:“Win8.1主题下载、Windows8主题”改成“Win10主题下载、Windows10主题”

  • 文章标题:“Win8.1”修改成“Win10”

  • 文章作者:“Microsoft酋长”改成“MS酋长”

  • 文章发布日期:改成“Win10专业网”建站之后的日期才合理

  • 文章内容:“Win8.1”修改成“Win10”

  • 固定链接:http://www.52windows8.com/%category%/%post_id%.html格式修改成http://www.windows10.pro/sample-post/格式

 

面对这几百篇文章,如何才能效率既高,又不易出错呢?可能对于数据库高手来讲不在话下,可是对于三好菌来说,纯粹操作数据库还真怕玩不转,尤其是风险太高。

想必有这个需求的不是太多,所以三好公民没有找到现成的教程,只好自己琢磨。本来想尝试采集软件,但是觉得可控性不好。于是,就决定还是用WordPress自带的“导入/导出”工具靠谱。倡萌已经分享过《WordPress自带的导出导入功能使用教程》,所以三好菌不再赘述导出导入的方法,下面只详细分享一下如何借助它实现在两个不同WordPress网站间转移文章的目的。

这就需在转移的过程中来做手脚,也就是把导出的数据先修改成符合我们需要之后再导入新站点。WordPress导出的是xml格式的文件,三好菌用Notepad++打开它,下面展示一下一篇文章的标题和正文内容部分。如图:

把一个WordPress站点的文章导入另一个WordPress站点的方法

你可以很轻松地用批量替换的方法把标题和正文内容中的“win8.1”替换成“Win10”。但是文章链接和发布日期、分类目录、标签等却需要修改正文后面的元数据部分。如图:

把一个WordPress站点的文章导入另一个WordPress站点的方法

<wp:post_id>

文章ID,为了避免ID重复,建议修改成比新网站最新的文章ID还大的数字,否则有冲突的风险。

<wp:post_date>

文章发布日期

<wp:post_name>

固定链接中显示的文章标题。建议把这里修改成简短一些的英文,否则导入之后文章的链接就变成了“http://www.windows10.pro/汉字文章标题的编码/”,很长;

<category domain=”category” nicename=”themes”><![CDATA[Win8主题]]></category>

分类目录,除了要修改汉字的分类目录名称,还要修改nicename,也就是分类目录的别名,修改成新网站里分类目录的别名,否则即使汉字名称相同,导入之后文章也会另起炉灶,在另一个同名的目录里。

<category domain=”post_tag” nicename=”windows8-1%e4%b8%bb%e9%a2%98″><![CDATA[Windows8.1主题]]></category>

文章标签。同样要修改标签名称和别名。

这其中能够批量修改的有“文章标题、发布日期(年份)、分类目录、标签、正文中的字词”,需要逐一修改有“文章ID、固定链接里的文章标题”,所以总体上修改效率还是比较高的。

细心的读者可能会说,怎么没见修改文章作者啊?其实不用这里改,导入的时候指定新作者就可以了,后面会讲到。不过文章正文中的作者名称还是要在这里批量修改好的。

修改完成之后保存,然后就可以在新网站中导入了。

把一个WordPress站点的文章导入另一个WordPress站点的方法

看到了吧,只需“将日志分配给现有用户”就可以实现改作者了。

不过这里有一点比较遗憾,就是“下载并导入文件附件”选项,三好菌勾选后并没有实现。后来又一篇文章一篇文章地用Hacklog Remote Image Autosave插件远程下载到文章里的。不知道有没有更智能的方法,请大家推荐一下。

PS:关于转移图片,三好菌想到一个方法。就是先把所有的图片全部拷贝过来,然后使用Add From Server插件把这些图片信息添加进入媒体库,然后使用媒体库里的“尚未附加”进行筛选,或者使用 DNUI 插件扫描未使用的图片,再批量删除即可。

OK,一番忙碌之后,旧网站的文章已经与新网站的文章浑然一体了。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表