Ankerlink an den Anfang der Seite
twine 957546 1920
Generic filters
Filter by Kategorien

Der Beitrag, geschriebem am 17. Oktober 2017, ist schon etwas älter und könnte womöglich nicht mehr aktuell sein

In meinem aktuellen Theme ist das Plugin kirki für Customizer Controls integriert.

Nach dem Update auf die Kirki-Version 3.0.10 konnte ich im Customizer an manchen Positionen nicht mehr navigieren. In der Console zeigte sich der Fehler:

VM987:39 Uncaught TypeError: data.value[choiceKey].replace is not a function
at eval (eval at m.template (underscore.min.js?ver=1.8.3:5), :39:35)
at c (underscore.min.js?ver=1.8.3:5)
at wp-util.js?ver=4.8.2:34
at child.renderContent (customize-controls.js?ver=4.8.2:2255)
at child.actuallyEmbed (dynamic-control.js?ver=4.8.2:165)
at Function. (dynamic-control.js?ver=4.8.2:145)
at i (jquery.js?ver=1.12.4:2)
at Object.fireWith (jquery.js?ver=1.12.4:2)
at Function.set (customize-base.js?ver=4.8.2:221)
at Function.d [as set] (jquery.js?ver=1.12.4:2)

Ausgelöst wurde er durch eine Änderung im Control dimensions.

<input {{{ data.inputAttrs }}} type="text" value="{{ (data.value[ choiceKey ]).replace( '%%', '%' ) }}"/>

Die Änderung der Zeile in

<input {{{ data.inputAttrs }}} type="text" value="{{ (data.value[ choiceKey ]).toString().replace( '%%', '%' ) }}"/>

behob den Fehler.

Die nach dem zu ersetzenden Wert durchsuchte Zeichenkette darf keine Ziffer, sondern muss ein String sein (Syntax string.replace(searchvalue, newvalue). Bei mir war der Wert in manchen Einstellungen jedoch 0, was bisher keine Rolle gespielt hatte.

Der Fehler war seitens des Entwicklers nicht nachvollziehbar. Demnach musste er durch etwas verursacht werden, was ich selbst eingebracht hatte.

Ursache dafür war, dass ein paar meiner Controls optional sind und von einer Funktion generiert werden. Diese ersetzte leere Werte durch die Ziffer 0. Die Änderung der Werte zu '0' behob den Fehler.

Bitte das Kommentarfeld nicht für Supportanfragen nutzen; hier kann kein Support angeboten werden. Die Angabe von Name oder E-Mail-Adresse ist optional, ein Spitzname wäre trotzdem nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Name und E-Mail-Adresse (beides optional, da alle Kommentare moderiert werden) werden dauerhaft gespeichert. Über dieses Formular kann jeder Zeit die Löschung persönlicher Daten oder Kommentare angefordert werden; die Anfrage wird nicht veröffentlicht und nach der Bearbeitung gelöscht. IP-Adressen, die mit Kommentaren gespeichert werden, werden nach zwei Monaten automatisch gelöscht.

Ihre Nachricht wird möglicherweise zur Spam-Prüfung an OpenAI (USA) weitergeleitet. Weitere Informationen finden Sie in unserer Datenschutzerklärung.