it-swarm.com.de

WP Admin fehlende Icons, zahlreiche JavaScript-Fehler, aber nur wenn SCRIPT_DEBUG falsch ist

Ich habe Zugriff auf einen einzelnen Linux/Apache-Server, auf dem ich WordPress bereitstellen möchte. Für diesen Fehler habe ich es mit dem Standardmotiv 21 getestet und alle Plugins deaktiviert.

Wenn ich zu einer als Administrator angemeldeten wp-admin-Seite gehe, fehlen die meisten Symbole in der linken Navigation, aktivierte Kontrollkästchen sind beispielsweise nicht aktiviert, und die Browserkonsole wird mit JavaScript-Fehlern gefüllt.

Auf der Dashboard-Seite ist beispielsweise keines der Symbole sichtbar, und die Fehlerkonsole sieht folgendermaßen aus:

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

Wenn ich im Browser auf die Registerkarte "Netzwerk" schaue (ich habe in Chrome, Safari und Firefox nachgeschaut und der Host hat auch nachgeschaut), geben alle Anforderungen den Status 200 zurück. Zumindest scheinen keine Anfragen blockiert zu werden.

Wenn ich der Datei wp-config.php SCRIPT_DEBUG=true hinzufüge, werden alle diese Fehler beendet und die Benutzeroberfläche wird wie gewohnt angezeigt.

Ich konnte dieses Problem nicht lokal reproduzieren, und mein Host scheint nicht in der Lage zu sein, mir zu sagen, was falsch ist (obwohl sie es sehen). Was kann ich ihnen sagen, und/oder was kann ich untersuchen?

Update: Mein Verdacht ist, dass dies ein Berechtigungsproblem auf dem Server sein könnte. Möglicherweise kann der Server die Dateien nicht wie von WordPress erwartet verketten. Aber der Host konnte nichts in dieser Richtung finden und ich bin nicht gut genug über Linux/Dateiberechtigungen informiert, um zu wissen, wonach sie zu suchen haben oder ob dies überhaupt der Fall ist.

1

Laden Sie eigene Javascripte in den Admin? Wenn ich mich richtig erinnere, wenn SCRIPT_DEBUG auf true gesetzt ist, werden die Javascripts nicht zusammengeführt, sondern separat geladen. Wenn sich ein benutzerdefiniertes Javascript nicht gut verketten lässt, kann dies dazu führen, dass das gesamte verkettete Javascript beschädigt und nicht korrekt ausgeführt wird.

Versuchen Sie, die hinzugefügten Javaskripte nacheinander zu entfernen und prüfen Sie, ob sich dadurch etwas ändert.

1
kuchenundkakao

Das einzige, was in JavaScript logisch anders ist, wenn SCRIPT_DEBUG auf true im Vergleich zu false gesetzt ist: Wenn SCRIPT_DEBUG auf true gesetzt ist, werden die wichtigsten JavaScript-Quelldateien geladen und normalerweise (wenn SCRIPT_DEBUG auf false gesetzt ist) die minimierten Versionen (zB file.min.js) werden mit Verkettung & Komprimierung geladen.

Anscheinend verursachen die verkleinerten Versionen der JS-Dateien Probleme. Vielleicht sind sie sogar korrupt.

Ersetzen Sie den WordPress-Kern durch die Version von wordpress.org. Möglicherweise werden die Probleme dadurch behoben.

Hinweis: Vergessen Sie nicht, den Browser-Cache zu leeren, wenn Sie damit fertig sind. Andernfalls werden möglicherweise falsche Versionen aus dem Cache geladen.

1
Fayaz

Ich habe das gleiche Problem mit der neuesten Version von Wordpress 5.0.1, aber nur mit/wp-admin/*. Die Haupt-Site rendert ganz gut.

Ich habe festgestellt, dass das Definieren von 'CONCATENATE_SCRIPTS' als "false" ebenfalls das Problem löst, was bedeutet, dass die minimierten Skripts tatsächlich in Ordnung sind.

Es werden auch keine Berechtigungsprobleme angezeigt. Der Versuch zu untersuchen, was genau passiert, wenn Skripte verkettet werden -

0
Adon Irani