2

I am searching for a good solution in which i can develop a wordpress site on my localhost and push the changes i made easily to my live server.

The idea is that i have some kind of plugin/software in which i just enter database and ftp credentials and i can just press "Push changes" and the changes get pushed from my local server to the remote server. Then i should have a full list of all the changes i made so in case something goed wrong i can always revert back.

I checked out a lot of plugins but there seems to be no plugin out there that gets it right. I tried WP Time Capsule, WP-Vivid, Duplicator, WP Staging Pro and the list goes on.

Does anyone know a good solution for that?

Thanks!

UPDATE

I found two solutions which do partially what i want. The plugins are called "WP Synchro" and "WP Migrate DB Pro". The Problem is that these Plugins come with two downsides:

  1. You need a website installed on both ends so you can push changes.

It would be necessary that you could push the first time without having to install a target website on the live server.

  1. These solutions don't have version control.

This is not necessary but would be definitely nice to have.

FURTHER UPDATE

We found a solution that would have been perfect which is "Wordmove". This is not a plugin but a whole local dev environment for Wordpress based on Ruby on Rails.

Sadly this environment does not run well with Windows(Which the devs themself stated on their website since it is a natvie Linux/Mac OSX application).

There were many problems trying to install this and we couldn't get it to run correctly. If someone knows something similar to Wordmove which runs better on Windows then please let me know.

Thanks!

4
  • 2
    Have you looked into flywheel - getflywheel.com? I definitely prefer just pushing with git, but if you need something that can just push the changes to a live site at the push of the button, this will do it. It also has a nice feature where you can make your local site temporarily live. Aug 16 at 18:40
  • Hello! Thank you for your answer! I looked into in my search process but this is sadly does not meet all the requirements i posted in the bounty. Aug 18 at 4:39
  • Can you use WSL(2) on your Windows and run Wordmove there?
    – kero
    Aug 18 at 12:49
  • Why is it necessary to not have to set anything up on the live server? We use WP Migrate DP Pro all the time. Yes, you need to install the plugin on both environments, but once it is set it, it works exceptionally well. There is also a setting to backup the database before migrating in case you need to roll back.
    – Phil
    Aug 19 at 16:03
1

You can achieve what you want using Local + WPEngine. Recently WPEngine made a deeper integration with Local. Local works great with windows and is very easy to set up a new WordPress local environment with it (only with a few clicks you will have a new WordPress site installed in your local enviroment, with a local url "http://your-site.local"), also this approach gives you the possibility to pull the website from WPEngine to Local as well as pushing from Local to WPEngine with just a couple of clicks, this includes an option for pushing the database if you want, without installing any additional plugins or third party resources.

WPEngine makes daily backups, and you can restore the backup you want to go back to, with just one click, so, if something goes wrong, it is very easy to recover your website. Also, WPEngine gives you a staging enviroment in the server, where you can test your changes and then deploy to production in just one click.

Here you can read more about features and configuration of Local + WPEngine connection.

As an alternative, you can use something like DeployHQ or DeployBot; connect that to Github, Bitbucket or similar, to create a pipeline to your server. So, when pushing via git to the website's repository, the deployment tool will deploy your local changes to your website. The configuration for those tools is relatevely easy. The downside of that approach is that you will have to use something like WP Migrate DB Pro to push the database and you will have to go trough the configuration process for every new website.

2
  • Hey! Thanks for the Answer but something like WP-Engine is not an option since we are an Agency and we make a lot of website. We can not buy a WP-Engine subscription for every website we make and we don't want that. We need some kind of solution that works from a one host to another. Something like Wordmove but much more polished. Aug 20 at 13:42
  • WPEngine has account options for numerous sites. It isn't exactly an agency plan but I believe 30 sites is the default for that level of service. We run 20+ at present on WPEngine from a single dashboard. You might also check into WP VIP from Automattic. They are the gold standard for performant WP hosting.
    – jdm2112
    Aug 20 at 15:50
1

Update 8.20.2021:

You ask questions like: How can you go without fatigue 500 km in 30 minutes by bike? The answer is simple. You have to choose another method or create a better one.

  1. Remote communication with mysql is not recommended because it is not secure.
  2. FTP is not a good choice for Deployment.
  3. The transfer speed in FTP is low.
  4. FTP is deprecated - but it is a valid way of transferring files.

You can easily doing that using GitHub Actions.

For such situations, we have a problem about Db. WordPress authors may write a new article. Or register a new user. Or place an order on WooCommerce. Or set a new record in the contact form. So it's not a best practice to push the DB but you can doing that too.

Requirements :

  1. SSH access
  2. Github account
  3. Github Desktop (Optional)

Pros:

  • Using Git version control (you can easilly undo to last commit)
  • You can setup test
  • Secure Connection
  • Push in short time
  • Free :)

Cons:

  • You should have SSH access so you can't doing this with any host.
  • I think this is not a good practice for DB.

Read this article : https://dev.to/knowbee/how-to-setup-continuous-deployment-of-a-website-on-a-vps-using-github-actions-54im

First add a repo for project. in local, git init in the folder. you can choose a theme or plugin folder or the whole WP.

Upadate: using docker container is a good option too.

3
  • Hey! Thanks for the solution but I wrote in my requirements that SSH can not be expected. It needs to work with only SQL & FTP Data. Thanks! Aug 20 at 13:38
  • 1
    The answer was updated. I think you should think about a hosting server for your customers. Aug 20 at 15:37
  • This answer addresses many of the obvious problems with this approach. FTP is very stoneage technology for transferring data like this.
    – jdm2112
    Aug 20 at 15:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.