Nach einer langen Zeit der Inaktivität kehren wir zur Last zurück und aktualisieren uns nach und nach mit neuen Tutorials. Dieses Mal werden wir die Probleme mit der Tag Cloud nach dem Update von WordPress 4.4 lösen . Stellen Sie klar, dass dieses Problem auftreten kann, wenn Sie ein benutzerdefiniertes Design verwenden oder es für WordPress in Versionen vor 4.4 entwickelt haben.
Probleme mit der Tag Cloud nach dem Upgrade auf WordPress 4.4
Die Geschichte ist einfach, eines Tages beschloss ich, mein Blog auf WordPress 4.4 zu aktualisieren und die Überraschung war, dass die Tag-Cloud kaputt war und nicht richtig angezeigt wurde. Aufgrund dieses Problems musste ich die Tag Cloud auf Vozidea.com für einige Monate deaktivieren, aber heute teile ich die detaillierte Lösung.
Die Ursache für dieses Problem war nicht WordPress selbst, aber nach dem Update auf WordPress 4.4 wurde die Funktion wp_tag_cloud()
geändert, sodass der Theme-Code nicht wie erwartet funktionierte.
Bisher hatte ich in der Datei functions.php
Code verwendet, um die Tag-Cloud mit benutzerdefinierten Parametern zu ändern:
add_filter('widget_tag_cloud_args', 'my_tag_cloud_args'); function my_tag_cloud_args($in){ return 'smallest=14&largest=14&number=25&orderby=name&unit=px'; }
Dieser Code funktionierte korrekt, da die Funktion wp_tag_cloud()
ihren Wert direkt wp_tag_cloud()
'echo' => true
), aber mit dem Eintreffen von WordPress 4.4 wird die Standard-Tag-Cloud in einer Variablen gespeichert, anstatt ihren Wert direkt anzuzeigen ( 'echo' => false
).
Mit dem alten Code überschreiben wir die Standardwerte, indem wir unsere benutzerdefinierten Parameter hinzufügen, wodurch die Tag-Cloud an der falschen Stelle und daher falsch angezeigt wird. Die Lösung besteht darin, die Standardwerte nicht zu überschreiben, aber wir müssen unsere benutzerdefinierten Parameter zu den Standardparametern hinzufügen. Dies erreichen wir, indem wir den Code wie folgt schreiben:
add_filter('widget_tag_cloud_args', 'my_tag_cloud_args'); function my_tag_cloud_args($args) { $my_args = array( 'smallest' => 14, 'largest' => 14, 'number' => 25, 'unit' => 'px', 'orderby' => 'name', ); $args = wp_parse_args( $args, $my_args ); return $args; }
In diesem zweiten Code können wir sehen, dass wir die Funktion wp_parse_args()
verwenden, um die Standardparameter mit den benutzerdefinierten Parametern zu verbinden. Mit dieser einfachen Änderung lösen wir das Problem und können das Tag-Widget weiterhin ohne Probleme verwenden.