Podemos hacer que ciertos plugins no carguen si el usuario está conectado a su cuenta. También podríamos hacer lo contrario añadiendo un else
al condicional.
Recuerda modificar los ejemplos del array $plugins_not_needed
por los plugins que tú quieras desactivar.
/* Plugins que no se cargan para usuarios conectados */
add_filter('option_active_plugins', 'desactivar_plugins_usuarios_conectados');
function desactivar_plugins_usuarios_conectados($plugins) {
// El gancho 'option_active_plugins' se lanza antes de que se genere info de usuario
// por lo que hay que cargar pronto este archivo
require(ABSPATH.WPINC.
'/pluggable.php');
// Si estamos conectados pero no en el area de admin de WP
if (is_user_logged_in() & !is_admin()) {
// Usa el slug de la carpeta del plugin y el nombre de su archivo php principal
// como en los siguientes ejemplos
$plugins_not_needed = array('woo-add-to-cart-popup/woo-add-to-cart-popup.php',
'hurry-timer/hurry-timer.php', 'wp-advanced-ads-manager/wp-advanced-ads-manager.php');
foreach($plugins_not_needed as $plugin) {
$key = array_search($plugin, $plugins);
if (false !== $key) {
unset($plugins[$key]);
}
}
}
return $plugins;
}