• Buenas noches:

    Estoy haciendo un child theme y cuando verifico los errores de la web en la herramienta para desarrolladores del navegador, se muestran lo siguientes errores. He seguido los pasos indicados a continuación, pero sin éxito en la resolución de dichos errores

    Error 1

    GET http://localhost/Cover/wp-content/themes/MusicTheme-child/js/jquery.prettyPhoto.min.js?ver=20151235 net::ERR_ABORTED

    Como se puede ver en la ruta, el error está relacionado con el fichero jquery.prettyPhoto.min.js. Parece ser que no lo encuentra, puesto que el código de la página está referido en la siguiente ruta del child theme y ahí no se localiza el fichero:

    <script type=’text/javascript’ src=’http://localhost/Cover/wp-content/themes/MusicTheme-child/js/jquery.prettyPhoto.min.js?ver=20151235′&gt;

    Para tratar de solucionar, he copiado el fichero en el child theme, en la misma ruta (.\mytheme\js) que está en el tema padre, pero cuando hago esto, aparece otro nuevo error en el navegador:

    Error 2

    [Violation] Forced reflow while executing JavaScript took 41ms

    Después de indagar un poco, veo que el fichero del tema padre, my_theme\widgets\class-tmpl-image-gallery.php incorpora el siguiente código:

    wp_enqueue_script( ‘prettyPhoto-jquery’,get_stylesheet_directory_uri() . ‘/js/jquery.prettyPhoto.min.js‘,array(),’20151235’,true );

    es decir, en el fichero class-tmpl-image-gallery.php «llama» al fichero jquery.prettyPhoto.min.js para incorporarlo. (Normalmente esta función se encuentra en functions.php).

    Para tratar de solucionar los errores anteriores, he copiado class-tmpl-image-gallery.php en la misma ruta pero del child theme y, lo mismo, para jquery.prettyPhoto.min.js. No obstante, los errores no se han solucionado y Chrome muestra lo siguiente:

    [Violation] ‘setTimeout’ handler took 363ms

    Desconozco de que depende, pero en ocasiones en navegador (Chrome) muestra este error, en otras ocasiones ninguno y en otras, algunos adicionales que se indican a continuación:

    [Violation] ‘load’ handler took 170ms (asociado al fichero jquery.js, que ni siquiera está ubicado en la carpeta del theme del que trabajo).

    JQMIGRATE: Migrate is installed, version 1.4.1

    Cuando uso Mozilla en lugar de Chrome, no muestra estos errores, pero muestra los dos siguientes avisos que no aparece con Chrome:

    URL del recurso: http://localhost/Cover/wp-content/themes/MusicTheme/css/bootstrap.min.css?ver=4.9.4
    URL del mapa fuente: bootstrap.min.css.map

    Cuestiones:
    ¿Estoy realizando bien el proceso descrito?
    ¿Cómo podría evitar la aparición de estos errores en el child theme?

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Moderador LGrusin

    (@lgrusin)

    Los archivos que se necesitan se toman del tema padre, a no ser que hayas cambiado las rutas a arhivos js y demás. No debería ir a buscarlos a las carpetas del tema hijo.

    Un saludo

    Iniciador del debate fernanf

    (@fernanf)

    Estoy revisando y creo que puede ser que por el uso en el tema padre de lo marcado en negrita de la siguiente función, wp_enqueue_script( ‘prettyPhoto-jquery’,get_stylesheet_directory_uri() . ‘/js/jquery.prettyPhoto.min.js‘,array(),’20151235’,true ).

    Si estamos en el tema padre, ¿no tendría que usarse la función get_template_directory ()? Probaré.

    Por último, como estos ficheros están relacionados con widgets, ¿tiene alguna peculiaridad especial o tratamiento los ficheros relacionados con widgets a la hora de crear un child theme?

    Muchas gracias

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • El debate ‘Error child theme en carga de ficheros js’ está cerrado a nuevas respuestas.