如何将Joomla站点文章迁移到Wordpress模板?

时间:2013-09-07 06:25:50

标签: php wordpress joomla

我想将Joomla网站文章转换为我的Wordpress模板。那么,这怎么可能呢?因为在文章迁移之前我从未体验过... 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您需要从数据库和文件系统中复制信息。

将完整/ images文件夹复制到wordpress或至少包含文章图像的子文件夹在同一位置可能更容易,以便更轻松地移植。

约定:Joomla表以随机字符串开头,管理员在安装时选择该字符串。它在Joomla代码中用“#”引用,所以如果我的前缀是“jos”,我会将“# _content”翻译为“jos_content”。找出你的前缀是什么,并在适当时替换。

主要内容

Joomla在表#__内容中存储文章。

对于文字,您想要抓住以下列:

title, alias, introtext, fulltext, metakey, metadesc

只需汇总introtext和全文即可获得完整的文章。

确保没有“内部”链接,如果文章的文字有另一篇文章的链接,您可能需要手工修复它(或查看最后一部分,移动网址)。

图片

如果您复制 images / 文件夹,则内容中嵌入的图片网址应该没有问题。

现在到了困难的部分。 Joomla 2.5+允许您指定将在不同视图中显示的额外图像;那些可以在Joomla的后端访问 - 编辑文章页面。

这些以json格式保存到表格字段“images”中。请注意,它们很少使用,因此您可能希望快速浏览params的内容,因为您可以跳过此步骤:这是您在未指定图像时将看到的内容:

{"image_intro":"","float_intro":"","image_intro_alt":"","image_intro_caption":"","image_fulltext":"","float_fulltext":"","image_fulltext_alt":"","image_fulltext_caption":""}

如果它们正在使用中,那你就不走运了。您需要编写一个脚本来将json解码为php对象(json_decode)。

更多信息

现在您可能不想错过一些元信息:

  • 州:0 =未发布,1 =已发布,-2 =已删除
  • catid:相关#_categories表的ID(分层)
  • created:文章创建的日期
  • created_by:#_users中指定的作者的id;您可能还想检查包含 author 属性的params(另一个json编码对象),其中作者可以编写任何任意文本以用作其签名。
  • publish_up:文章发布的日期
  • publish_down:虽然该文章可能会被发布,但除非此为0或将来设置,否则它将不会显示。
  • urls:json编码的网址列表
  • 语言:文章的默认语言

移动网址

Joomla SEF模块目前正在使用URL发布您的文章,这很可能与WordPress将使用的URL不同。您可能尝试创建这样的菜单结构,使其看起来相同,或使用简单的规则在.htaccess文件中处理它们:

RewriteEngine On
#Joomla url (SEF or non-sef whichever you see in your Joomla site and / or is indexed in google)
RewriteCond %{QUERY_STRING} ^option=com_content&view=article&id=168&Itemid=67&lang=it$
#wordpress url
RewriteRule ^.*$ /some/path/title? [R=301,NC,L]

请查阅它在stackoverflow上的其他地方有很好的文档记录,有点超出了这个答案的范围。