18 Oct 2008
Widgets nicht administrierbar
Irgendwie komisch, wenn man keine Widgets mehr verwalten kann im WordPress Admininterface. Ich konnte keine Widgets mehr hinzufügen, ändern oder entfernen. Da mich das schon nervt, bin ich dem Ganzen nachgegangen und habe die Ursache recht schnell ausfindig gemacht und ebenso auch behoben.
Problem: WordPress Widgets nicht mehr anklickbar oder änderbar
Das Problem ist recht einfach beschrieben. Sobald man ein Plugin installiert hat, welches ein weiteres Formular außerhalb des normalen Widgets Formular Container erzeugt, überlagert der neue Container den alten. Dadurch ist der “alte” – also der ursprüngliche – Container und das darin enthaltene Formular nicht mehr nutzbar, da man keinen Link darin anklicken kann!
Lösung: CSS anpassen und Neuladen erzwingen
Da die Links und auch das CSS recht gut gecached wird, muss man die Versionsnummer des CSS entsprechend anpassen und das CSS selber korrigieren. Hier ist ein Patch, der beide Probleme behebt:
Index: wp-includes/script-loader.php =================================================================== --- wp-includes/script-loader.php (Revision 9239) +++ wp-includes/script-loader.php (Arbeitskopie) @@ -320,7 +320,7 @@ $styles->add( 'colors-fresh', '/wp-admin/css/colors-fresh.css' ); // for login.php. Is there a better way? $styles->add_data( 'colors-fresh', 'rtl', true ); - $styles->add( 'global', '/wp-admin/css/global.css', array(), '20081013' ); + $styles->add( 'global', '/wp-admin/css/global.css', array(), '20081015' ); $styles->add( 'media', '/wp-admin/css/media.css', array(), '20080709' ); $styles->add( 'widgets', '/wp-admin/css/widgets.css' ); $styles->add( 'dashboard', '/wp-admin/css/dashboard.css', array(), '20081008' ); Index: wp-admin/css/global.css =================================================================== --- wp-admin/css/global.css (Revision 9239) +++ wp-admin/css/global.css (Arbeitskopie) @@ -212,6 +212,7 @@ } #wpbody .wrap { + clear: both; position: relative; } |
Sobald man diese Änderungen eingepflegt hat, funktioniert alles wie gewohnt und man kann seine Widgets wieder verwalten. Viel Spaß!
Wie benutzt man diesen Patch?
Stentor
September 25th, 2009 at 9:55 pmpermalink
Den Text einfach in eine Datei packen z.B. “script-loader.php.patch” und dann mit dem UNIX-Programm Patch ausführen.
Alternativ kannst Du auch einfach die Änderungen manuell durchführen, da es ja recht wenig sind. Die Zeilen mit @@ … @@ zeigen Dir, welche Zeilen nun folgen. Ein – vor der Zeile heisst, die Zeile wurde entfernt und ein + vor der Zeile heisst, die Zeile wurde eingefügt – natürlich ohne das + selber.
havvg
September 27th, 2009 at 12:45 pmpermalink