web-dev-qa-db-fra.com

WP Icônes manquantes pour l'administrateur, nombreuses erreurs JavaScript, mais uniquement lorsque SCRIPT_DEBUG est false

J'ai accès à un seul serveur Linux/Apache sur lequel je tente de déployer WordPress. Aux fins de cette erreur, je l'ai testé avec le thème par défaut vingt-sept et tous les plugins désactivés.

Lorsque je vais sur une page wp-admin, connectée en tant qu'administrateur, la plupart des icônes de la navigation de gauche sont manquantes, les cases à cocher cochées ne sont pas cochées (par exemple) et la console du navigateur s'emplit d'erreur JavaScript.

Par exemple, sur la page du tableau de bord, aucune des icônes n'est visible et la console d'erreur se lit comme suit:

Uncaught TypeError: a.widget is not a function
at load-scripts.php?c=0&load[]=hoverIntent,common,admin-bar,wp-ajax-response,jquery-color,wp-lists,quicktags,jquery-query,admin-comments,jquery-ui-core,jquery-&load[]=ui-widget,jquery-ui-mouse,jquery-ui-sortable,postbox,underscore,wp-util,wp-a11y,dashboard,thickbox,plugin-install,updates,shortc&load[]=ode,media-upload,svg-Painter,heartbeat,wp-auth-check,wplink,jquery-ui-position,jquery-ui-menu,jquery-ui-autocomplete&ver=4.9.7:300
at load-scripts.php?c=0&load[]=hoverIntent,common,admin-bar,wp-ajax-response,jquery-color,wp-lists,quicktags,jquery-query,admin-comments,jquery-ui-core,jquery-&load[]=ui-widget,jquery-ui-mouse,jquery-ui-sortable,postbox,underscore,wp-util,wp-a11y,dashboard,thickbox,plugin-install,updates,shortc&load[]=ode,media-upload,svg-Painter,heartbeat,wp-auth-check,wplink,jquery-ui-position,jquery-ui-menu,jquery-ui-autocomplete&ver=4.9.7:300
at load-scripts.php?c=0&load[]=hoverIntent,common,admin-bar,wp-ajax-response,jquery-color,wp-lists,quicktags,jquery-query,admin-comments,jquery-ui-core,jquery-&load[]=ui-widget,jquery-ui-mouse,jquery-ui-sortable,postbox,underscore,wp-util,wp-a11y,dashboard,thickbox,plugin-install,updates,shortc&load[]=ode,media-upload,svg-Painter,heartbeat,wp-auth-check,wplink,jquery-ui-position,jquery-ui-menu,jquery-ui-autocomplete&ver=4.9.7:300

Lorsque je regarde dans l'onglet Réseau du navigateur (j'ai regardé dans Chrome, Safari et Firefox, et l'hôte a également regardé), toutes les demandes retournent un statut 200. Il semble qu'aucune demande ne soit bloquée, du moins.

Si j'ajoute SCRIPT_DEBUG=true au fichier wp-config.php, toutes ces erreurs s'arrêtent et l'interface s'affiche normalement.

J'ai été incapable de reproduire ce problème localement et mon hôte semble incapable de me dire ce qui ne va pas (même s'il le voit). Que puis-je leur dire d'examiner et/ou que puis-je examiner?

Mise à jour: pour être plus clair, je soupçonne qu'il pourrait s'agir d'un problème d'autorisations sur le serveur. Peut-être le serveur est-il incapable de concaténer les fichiers comme prévu par WordPress. Mais l'hôte n'a rien pu trouver de tel à cet effet et je ne connais pas suffisamment les autorisations de fichiers/Linux pour savoir quoi dire, ou même si c'est ce qui se passe.

1
Jonathan Stegall

Chargez-vous vos propres javascripts dans l’administrateur? Si je me souviens bien, si SCRIPT_DEBUG est défini sur true, les javascripts ne sont pas concentrés, mais chargés séparément. Donc, si un javascript personnalisé ne joue pas bien en étant concentré, cela peut entraîner la corruption de tout le javascript concené et son exécution incorrecte.

Essayez de supprimer les javascripts ajoutés un par un et vérifiez si cela change quoi que ce soit.

1
kuchenundkakao

La seule chose qui diffère logiquement en JavaScript lorsque SCRIPT_DEBUG est défini sur true par rapport à false est: lorsque SCRIPT_DEBUG est défini sur true, les principaux fichiers source JavaScript sont chargés et normalement (lorsque SCRIPT_DEBUG est défini sur false), les versions minifiées (par exemple, file.min.js) sont chargés avec concaténation & compression .

Donc, apparemment, les versions simplifiées des fichiers JS posent des problèmes. Peut-être qu'ils sont même corrompus.

Remplacez le noyau WordPress par la version de wordpress.org, cela résoudra peut-être les problèmes.

Remarque: N'oubliez pas de vider le cache du navigateur lorsque vous avez terminé, sinon de mauvaises versions pourraient être chargées à partir du cache.

1
Fayaz

Je rencontre le même problème sur le dernier Wordpress 5.0.1 mais seulement sur/wp-admin/*. Le site principal rend bien.

J'ai trouvé que définir 'CONCATENATE_SCRIPTS' comme étant faux résoudrait également le problème, ce qui signifie que les scripts minifiés sont en fait corrects.

Ne voyant aucun problème d'autorisations non plus. Essayer de rechercher ce qui se passe exactement lorsque les scripts sont concaténés -

0
Adon Irani