¿Activar un complemento a través de PHPMyAdmin o FTP?

18

Acabo de deshabilitar un complemento en mi sitio y ahora me da la temida pantalla blanca de la muerte. Sé que el sitio estará bien si reactivo el complemento.

¿Hay alguna manera de activar manualmente un complemento a través de PHPMyAdmin o por FTP?

Django Reinhardt
fuente
probablemente sea útil para decirle al propietario del complemento que esto sucedió. Tal vez el complemento necesita un poco de trabajo
Benny

Respuestas:

32

Lo arreglé yendo a través de PHPMyAdmin a la tabla "Opciones" y luego a la fila active_plugins.

Tenía lo siguiente almacenado allí (formateado para facilitar la lectura):

a:10:{
    i:0;s:49:"1and1-wordpress-wizard/1and1-wordpress-wizard.php";
    i:1;s:29:"acf-repeater/acf-repeater.php";
    i:2;s:30:"advanced-custom-fields/acf.php";
    i:3;s:45:"limit-login-attempts/limit-login-attempts.php";
    i:4;s:27:"redirection/redirection.php";
    i:6;s:33:"w3-total-cache/w3-total-cache.php";
    i:7;s:41:"wordpress-importer/wordpress-importer.php";
    i:8;s:24:"wordpress-seo/wp-seo.php";
    i:9;s:34:"wpml-string-translation/plugin.php";
    i:10;s:38:"wpml-translation-management/plugin.php";
}

He añadido una nueva línea (para el plugin que falta) y se incrementa el a:10de a:11indicar que ahora hay 11 elementos de la matriz:

a:11:{
    i:0;s:49:"1and1-wordpress-wizard/1and1-wordpress-wizard.php";
    i:1;s:29:"acf-repeater/acf-repeater.php";
    i:2;s:30:"advanced-custom-fields/acf.php";
    i:3;s:45:"limit-login-attempts/limit-login-attempts.php";
    i:4;s:27:"redirection/redirection.php";
    i:5;s:40:"sitepress-multilingual-cms/sitepress.php";
    i:6;s:33:"w3-total-cache/w3-total-cache.php";
    i:7;s:41:"wordpress-importer/wordpress-importer.php";
    i:8;s:24:"wordpress-seo/wp-seo.php";
    i:9;s:34:"wpml-string-translation/plugin.php";
    i:10;s:38:"wpml-translation-management/plugin.php";
}

i:parece ser el número de artículo, y gracias al comentario de JHoffmann, parece s:ser la longitud de la cadena que sigue.

¡El sitio ahora funciona como antes!

Django Reinhardt
fuente
2
El ssinónimo de cuerda y el siguiente número es la longitud de la cadena.
JHoffmann
@JHoffmann ¡Gracias por eso! Actualicé mi respuesta. ¿Puedes decirme dónde aprendiste eso? ¿Existe algún buen recurso en alguna parte que explique tales cosas? Gracias.
Django Reinhardt
ien realidad significa valor entero, ssignifica cadena y el número al lado ses la longitud de la cadena
Pieter Goosen
1
Esos son datos serializados. No tengo una fuente exacta, pero puedes buscar datos serializados. También puede ver JSON, ya que es más donde se utilizan datos serializados
Pieter Goosen,
1
@DjangoReinhardt Como dijo Pieter Goosen, estos son datos serializados, ya que son generados por la función de serialización de php . En wordpress también hay una función de contenedor llamada maybe_serialize
JHoffmann
12
//Using this code you can activate your plugin from the functions.php
    function activate_plugin_via_php() {
        $active_plugins = get_option( 'active_plugins' );
        array_push($active_plugins, 'unyson/unyson.php'); /* Here just replace unyson plugin directory and plugin file*/
        update_option( 'active_plugins', $active_plugins );    
    }
    add_action( 'init', 'activate_plugin_via_php' );
Anil Jadhav
fuente
Si desea activar más de un complemento, simplemente repita ...
Anil Jadhav
array_push ($ active_plugins, 'unyson / unyson.php');
Anil Jadhav
1
también puede agregar un if (! in_array ('unyson / unyson.php', $ active_plugins)) para asegurarse de que no se agregue más de una vez
Pierre
3

Simplemente puede cambiar el nombre de la carpeta del complemento, por ejemplo:

"_aksimet"desactivarlo y luego volver "aksimet"a activarlo nuevamente (si estaba activo)

puede hacerlo con todas las carpetas de "complementos" juntas.

De lo contrario, vaya a MySQL y eche un vistazo a este manual paso a paso , en resumen:

  1. MYSQL> wp_options
  2. buscar active_pluginsentrada (ambos pasos se pueden hacer por SELECT * FROM wp_options WHERE option_name = 'active_plugins';)
  3. y luego escriba su complemento allí como se escriben los otros complementos ( ies índice, ses para la longitud de la cadena).

Espero eso ayude

kybernaut.cz
fuente
Gracias. Intenté desactivar y resulta que el código del complemento está demasiado arraigado en todo el sitio. Necesito una forma de reactivarlo :(
Django Reinhardt
¿Qué quieres decir con eso? Para la reactivación, simplemente cámbiele el nombre. ¿Tienes algún error más o menos?
kybernaut.cz
El complemento se desactivó a través de la interfaz WP Admin. Una vez que se desactivó, ya no podía acceder a mi sitio. No había nada para "renombrar", ya que no lo desactivé al cambiarle el nombre a FTP.
Django Reinhardt
He actualizado mi respuesta, pero eso definitivamente es extraño. ¿Qué complemento era? Tal vez pueda cambiar a veinticinco (cambiar el nombre de su tema), activarlo y verificar qué salió mal y luego volver a su tema.
kybernaut.cz
2

Solo otra respuesta para un enfoque diferente que podría beneficiar a alguien más en el futuro. También puede mover la carpeta del complemento a la carpeta Debe usar (que probablemente necesitará crear si no se usó antes. Esta ruta suele ser:

wp-content/mu-plugins

Los complementos en esta carpeta siempre se ejecutarán. Consulte lo siguiente para obtener más información:

https://codex.wordpress.org/Must_Use_Plugins

Nota: Lo único a tener en cuenta es que estos complementos se cargan antes que otros en la carpeta de complementos. Consulte también las advertencias en el enlace anterior, ya que puede haber otros problemas que podrían impedir que su complemento funcione correctamente.

TomC
fuente