Estoy en el proceso de configurar una red multisitio (potencialmente) grande, y estoy buscando hacer que sea lo más fácil posible agregar y configurar sitios cuando sea necesario. Actualmente estoy en la fase en la que estoy tratando con complementos.
Con multisitio, conozco varias formas diferentes de activar complementos
- Coloque el complemento
/plugins
, actívelo en cada sitio de forma invidual - Coloque el complemento
/plugins
, use 'activar red' para activarlo en todos los sitios - Coloque el complemento
/mu-plugins
, activado automáticamente en cada sitio
Ahora, he estado jugando con la configuración y quiero activar Akismet en todos los sitios excepto uno o dos. Pensé que sería capaz de activar en red el complemento y luego deshabilitarlo en un solo sitio, pero no puedo hacerlo; si uso la activación de red, solo existe la opción de 'desactivar red', que desactiva el complemento a través de todos los sitios
¿Hay alguna manera de activar la práctica funcionalidad de la red pero aún así tener la conveniencia de poder desactivar los complementos sitio por sitio?
mu-plugins
y funciona como un sueño!if ( isset($value['akismet/akismet.php']) ) { unset($value['akismet/akismet.php']); }
Este complemento: http://firestats.cc/wiki/WPMUPluginCommander
omite las cosas de activación de red y hace lo suyo. y le permite deshabilitar el complemento sitio por sitio.
Actualización: Parece que este complemento rompe el complemento de etiquetas de todo el sitio, así que tenga cuidado antes de probar en una red de producción.
fuente
Esto es lo que funcionó para mí para deshabilitar un complemento para un tema en particular en una instalación multisitio / multitema. Agregué estas pocas líneas en la parte superior del archivo functions.php en mi tema:
fuente
init
como @GDR.Los complementos activos se almacenan en las opciones wp_ [blog_id] _ en el campo 'active_plugins' y 'active_sitewide_plugins' en wp_ [blog_id] _sitemeta. Estos son campos serializados, así que no los edite a menos que sepa lo que está haciendo.
También eche un vistazo a wp-admin \ plugin.php. Debería ser posible escribir un complemento que haga lo que quiera usando las funciones declaradas allí, por ejemplo, is_plugin_active () y enable_plugin ().
Sin embargo, supongo que usted es competente en PHP, lo que puede no ser el caso.
fuente
Las respuestas de sorich87 y user33465 no me funcionaron con Wordpress 4.3. Agregar esto a las funciones del tema.php funcionó:
fuente
No está listo para usar en WP 3, pero creo que sería posible anular la opción usando los filtros option_ *.
Además, sería bueno si agregara la sugerencia como una solicitud de función en core.trac.wordpress.org.
fuente
La mejor manera de manejar todos los complementos en la red multisitio es "Plugin Commander" que puede encontrar aquí: http://wordpress.org/extend/plugins/plugin-commander/
fuente
Logré deshabilitar el complemento pero todavía estaba allí en el panel del sitio principal. La única solución que encontré para eliminarlo completamente del sitio principal fue verificar el main.php del complemento del sitio y deshabilitarlo de acuerdo con él:
fuente