it-swarm-es.com

wp_enqueue_script fue llamado incorrectamente

No sé cómo pero ahora estoy recibiendo este error:

Aviso: wp_enqueue_style fue llamado incorrectamente. Los scripts y los estilos no se deben registrar o poner en cola hasta que se enlacen los wp_enqueue_scripts, admin_enqueue_scripts o login_enqueue_scripts. Por favor, consulte la depuración en WordPress para obtener más información. (Este mensaje se agregó en la versión 3.3.) En wp-includes/functions.php en la línea 3049

Aviso: wp_enqueue_script fue llamado incorrectamente. Los scripts y los estilos no se deben registrar o poner en cola hasta que se enlacen los wp_enqueue_scripts, admin_enqueue_scripts o login_enqueue_scripts. Por favor, consulte la depuración en WordPress para obtener más información. (Este mensaje se agregó en la versión 3.3.) En wp-includes/functions.php en la línea 3049

Advertencia: no se puede modificar la información del encabezado: los encabezados ya enviados por (la salida se inició en wp-includes/functions.php: 3049) en wp-login.php en la línea 415

Advertencia: No se puede modificar la información del encabezado: los encabezados ya enviados por (la salida se inició en wp-includes/functions.php: 3049) en wp-login.php en la línea 427

Esto es lo que obtengo cuando intento iniciar sesión ... En otros sitios, solo tengo dos primeros errores. Intento arreglarlo pero no puedo. ¿Alguna sugerencia?

16
raiden

Deshabilita todos los complementos y cambia al tema predeterminado. Debería haberse ido ahora.

Luego habilita cada complemento paso a paso, hasta que el problema vuelva. Ya conoces la fuente, digamos un plugin.

El complemento llama probablemente wp_enqueue_script demasiado pronto. Encuentre todas las apariciones de esa función, luego asegúrese de que estén vinculados a acciones específicas:

  • wp_register_script() debe ser llamado para la acción wp_loaded
  • wp_enqueue_script en una de las acciones
    • wp_enqueue_scripts,
    • admin_enqueue_scripts,
    • customize_controls_enqueue_scripts o
    • login_enqueue_scripts (vea este hilo para el último).
13
fuxia

Basado en la solución de Gregory Schultz

Envuelva todos sus scripts y estilos en una función y enganche esa función a su acción enqueue objetivo. ????

function my_admin_scripts() {
  wp_enqueue_style( 'admin-css', get_stylesheet_directory_uri() . '/admin/css/admin.css' );
  wp_enqueue_script( 'admin-js', get_stylesheet_directory_uri() . '/admin/js/admin.js', true );
}
add_action( 'admin_enqueue_scripts', 'my_admin_scripts' );

wp_enqueue_scripts- front-end

admin_enqueue_scripts- página de administración

login_enqueue_scripts- página de inicio de sesión

3
myk

La razón por la que esto está sucediendo es porque estas funciones se llaman directamente desde el archivo functions.php, sin usar una función. Averigüe qué líneas en functions.php no están dentro de una función como esta, y agréguelas.

Ejemplo para el selector de fechas:

-En lugar de esto en functions.php:

wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_style('jquery-ui-css', '//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css');
wp_enqueue_style('jquery-ui-css', '//ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css');

-Añadir esto

 // Definimos la función: 
 Function MYTHEME_scripts () {
 Wp_enqueue_script ('jquery-ui-datepicker'); 
} 
 
 // Agregar las funciones a WP loading list. 
 Add_action ('wp_enqueue_scripts', 'MYTHEME_scripts'); 
 
 Function MYTHEME_styles () {
 wp_enqueue_style ('jquery-ui-css', '//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css');
 wp_enqueue_style ( 'jquery-ui-css', '//ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css');
} 
 
 // Agregar las funciones a WP cargando lista. 
 Add_action ('wp_enqueue_style', 'MYTHEME_styles'); 

Espero que funcione

2
Albert Sauqué

Significa que hay 3 "puntos finales" para wp_enqueue_script() que son wp_enqueue_scripts para el frontend, login_enqueue_scripts para la pantalla de inicio de sesión, admin_enqueue_scripts para el panel de administración. Revisa este enlace .

Recibes este error porque wp_enqueue_script() fue llamado incorrectamente.

1
JMau

En lugar de deshabilitar todos sus complementos uno por uno, o modificar su base de código para depurar, puede usar Query Monitor complemento para reducir la fuente de este error.

Cuando vea este error reportado en la consola:

wp_register_style fue llamado incorrectamente. Los scripts y los estilos no se deben registrar o poner en cola hasta que se enlacen los wp_enqueue_scripts, admin_enqueue_scripts o login_enqueue_scripts. Por favor, consulte la depuración en WordPress para obtener más información. (Este mensaje fue agregado en la versión 3.3.0.)

La última columna (Component) le indicará el complemento que está provocando el error. Desde allí, realice una búsqueda dentro de ese complemento (o tema) para encontrar y solucionar el problema.

1
Kevin Leary