Brugman / acf-agency-workflow

A WordPress plugin for ACF. Create, move, distribute and sync your Field Groups as JSON.
20 stars 4 forks source link

Is it production ready ? #15

Open edemir206 opened 4 years ago

edemir206 commented 4 years ago

Hi,

Your plugin is amazing, exactly what I needed, just one question. is it production ready ? I'm planning to use as a mu plugin on a multisite network.

Thanks for the great job.

Brugman commented 4 years ago

Hi @edemir206 . I'm glad you like it!

A while ago I noticed the plugin deleted a field group of mine unintentionally. That's why I made the log-actions branch, but I haven't debugged that yet. Maybe that makes it not production ready, but that's the worst that can happen. I think. I do run it in production on 3-4 client sites myself.

Both multisite and mu-plugin use are completely untested at the moment.

I understand the multisite request. I have a very complex multisite client site, and they don't use this plugin yet, but it would be nice if they could.

Personally I rarely use mu-plugin. This may be a dumb question, but why would you want to use it as a mu-plugin?

edemir206 commented 4 years ago

I plugins as mu-plugin in two cases:

1) When there's dependency, for example, if your plugin adds functionality that are needed by other plugins and because of this never should be deactivated I put them on MU. I also use ACF as mu-plugin because a lot of plugins I use need it activated, If someone goes on admin and deactivate ACF by mistake for example the entire network breaks.

2) When I need plugins activated right away on my dev env. Let me explain, I use bedrock for project structure which gives composer powers to WordPress, So I defined some plugins in "require-dev" part of the composer.json file, and set these plugins path to mu-plugins folder, then when you run composer update don't need to activate these plugin because they are mu plugins.

I just found one issue, i'm using ACF as a MU plugin and the "auto sync" won't work on my env.

This line fail to verify if ACF is loaded: https://github.com/Brugman/acf-agency-workflow/blob/246ec921c91c03f99deb613a268dc283750e7933/functions.php#L74

So I changed to:

if ( in_array( 'advanced-custom-fields-pro/acf.php', get_option( 'active_plugins' ) ) || class_exists('acf'))

and it worked.

Do you accept pull requests?

Edit: In fact your plugin does not need to be loaded as a MU plugin, I just want the main blog to auto import JSON. So a mu plugin will auto import on every subsite which is not right for my case. Also I will not "auto import" JSON on production server, this plugin should be used only on dev env.

Brugman commented 4 years ago

Do you accept pull requests?

Yeah, you can fork develop.