使用wordpress设置开发,登台和制作工作流程的好方法是什么

时间:2010-06-04 03:15:39

标签: wordpress staging dev-to-production

Wordpress存在一些挑战,因为它往往会在数据库中保留太多,使得很难从服务器移动到服务器。

需要注意哪些其他问题?

您的工作流程是什么样的?

4 个答案:

答案 0 :(得分:5)

我有一个WordPress安装设置为我的开发服务器上的多个域供电。插件和主题文件也是共享的,因此升级是所有博客的一键式处理。

我使用Apache VirtualHosts将多个域映射到同一个文档根目录,并在主wp-config.php中添加一些魔法来动态设置DB_NAME,基于当前主机(我可以发布代码,如果你喜欢)。

对于本地工作,我只有一个具有root权限的MySQL用户,并将其用于我的所有数据库(不建议在生产服务器上使用!)。

我的本​​地域名被命名为适用于真实域名,但使用假TLD。因此,使用example.com,我设置了一个VirtualHost example.dev

当我准备好上线时,我使用HeidiSQL制作开发数据库的副本,然后用{{1} 替换example.dev的所有出现次数 }。

现在,已复制的数据库已准备好进行生产安装。镜像生产服务器上的本地WordPress安装(复制插件,上传和主题),并使用HeidiSQL(推荐)或phpMyAdmin导入准备好的数据库。

更新

当然,如果您对其中一个进行了更改,然后将所有内容复制到另一个,那么将丢失您在另一个上所做的任何更改。这不仅适用于WordPress,也适用于生活本身的其他任何事情!

如果我需要在网站上线后进行重大更改(主要是指我应该在生产服务器上执行的更改),我会执行相反的过程。上面(复制从生产到开发的所有内容),进行更改,然后再反过来。

答案 1 :(得分:3)

WordPress.stackexchange上询问并回答了同样的问题。它包含从开发到生产的快速部署的详细信息和最佳实践。


修改

这与我在WordPress Answers中添加的答案相同。

我可能有更好的方法,但我会给你两个选择:

1.使用XML Export导出新帖子和评论。然后使用WordPress导入器将新帖子和注释导回到开发数据库

最好导入dev然后将数据库移到生产环境,因为导入时它会从生产中下载所有新的媒体文件。

  

与此同时,制作已经改变(新帖子,新评论等)

这可以解决您引入任何更改内容的问题。

2。使用INSERT IGNORE INTO MySql命令从dev添加新表。或REPLACE命令覆盖同一个表中的重复行。

在使用MySql之前,备份两个数据库并将gz数据库移动到生产服务器并上传转储(如果它与生产相同,则更改dev的名称。

INSERT IGNORE INTO `_wp_production_db`.`wp_cool_plugin_options`
SELECT *
FROM `_wp_dev_db`.`wp_cool_plugin_options`

我对MySql命令感到不舒服,所以我选择1。

答案 2 :(得分:1)

我的本​​地计算机上有开发站点并更改本地主机文件,因此,对实时服务器(www.example.com)的调用指向localhost。这样所有对外部文件(jquery等)的调用仍然有效,我不必费心去通过db来改变任何东西。 通过wordpress XML导入和导入内容给了我最好的结果。

<强>更新 我使用http://www.mertyazicioglu.com/projects/wordpress-move/并取得了不错的成绩。

JD

答案 3 :(得分:0)

如果你安装了phpMyAdmin,那么从服务器到服务器移动wordpress网站应该不是问题。只需将数据库导出到tar.gz并通过FTP复制自定义主题(如果使用的话),然后在创建新数据库和新鲜wordpress转储后,将它们重新上传到新服务器。数据库中的home和blog url中的2个更改以及wp-config文件和完成的2个更改。

我遇到过的一件事就是第三方插件。我最终自己编写了很多画廊和javascript小部件,因为第三方插件看起来像垃圾,很慢或者不按我想要的方式工作。 感谢上帝为JQuery。