Is it possible, somehow to programmatically install plugins? So I can send my client one file they unpack, go to some installplugins.php file and that installs + activates them? Only way I found for doing that is really rancid lowlevel; I'm hoping someone here knows better methods.
Installation is the process of making hardware and/or software ready for use. Obviously, different systems require different types of installations.
You can check your installed composer version using a command composer -v at the current path. Such as: composer -v.
Today I use a shell loop with wp-cli to install and activate the plugins
For activating, I use some variant of this. suppose I had three plugins i wanted to activate ("cforms", "w3-total-cache", "wordpress-seo"). The convention is that their directory and plugin .php file are the same name:
$wordpress_path = "/path/to/my/wordpress/install";
require_once( $wordpress_path . "/wp-load.php" ); //not sure if this line is needed
//activate_plugin() is here:
require_once( $wordpress_path . "/wp-admin/includes/plugin.php");
$plugins = array("cforms", "w3-total-cache", "wordpress-seo");
foreach ($plugins as $plugin){
$plugin_path = $wordpress_path."wp-content/plugins/{$plugin}.php";
activate_plugin($plugin_path);
}
/wp-content/plugins/
(root dir if the plugin is just one file, otherwise a subdir).activate_plugin('/full/path/to/your/plugin/php');
Here's a complete script; put in wp-admin, give it a .php suffix, and hit it via curl.
<?php
define('WP_ADMIN', TRUE);
define('WP_NETWORK_ADMIN', TRUE);
define('WP_USER_ADMIN', TRUE);
require_once('../wp-load.php');
require_once( '../wp-admin/includes/admin.php' );
require_once( '../wp-admin/includes/plugin.php' );
activate_plugin("/full/path/to/my/plugin.php");
?>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With