Cómo emitir un mensaje durante la activación del complemento

9

Estoy desarrollando un plugin, pero durante la frase de activación estoy constantemente enfrentando errores. Sin embargo, no hay una manera fácil de mostrar los mensajes de error, ya que las cosas que se hacen eco darían como resultado un error de "salida no superada". Probé el gancho admin_message pero no funciona. ¿Cómo puedo alertar al usuario si alguna etapa de la activación ha fallado con motivo?

    
pregunta lulalala 29.08.2011 - 11:31

3 respuestas

8

Para realizar pruebas, puede utilizar el sistema de registro (php_error.log):

error_log('Plugin activated', 0);

// Check for DB table existance
if(!$this->hasDBTable()){
    error_log('Database not present', 0);
    if($this->createCELabelsDBTables()){
        error_log('Database was created.', 0);
    } else {
        error_log('Error creating the CE Labels Plugin db tables!', 0);
    }

} else {
    error_log('Database OK', 0);
}

Para enviar un error al usuario sin el error "Los encabezados ya se enviaron", puede usar la función php trigger_error:

trigger_error('PLUGIN OK',E_USER_ERROR);

Con Wordpress siempre debe ser E_USER_ERROR o no se mostrará el mensaje.

Sé que el error_log funciona perfectamente ya que lo estoy utilizando, pero el trigger_error muestra la información de "must". Pruébalo y ve por ti mismo :)

    
respondido por el Domingos Freitas 30.08.2011 - 12:38
2

SOLUCIÓN:

register_activation_hook( __FILE__, 'my_activation_func' ); function my_activation_func() {
    file_put_contents(__DIR__.'/my_loggg.txt', ob_get_contents());
}

inserte este código en el complemento, y después de un error, vea "my_loggg.txt" dentro de su carpeta de complementos.

    
respondido por el T.Todua 19.03.2015 - 00:55
0

1) Elimine el espacio adicional en las páginas internas o en las páginas de complementos.

2) elimina el estilo en línea en las páginas o páginas de complementos.

ha funcionado para mí cada vez. He usado muchas veces el mismo método. cuando el error del problema en la página del complemento o en la página de Wordpress.

Saludos,

Hitesh Nagpal

    
respondido por el hitesh nagpal 08.04.2015 - 06:47

Lea otras preguntas en las etiquetas