Dies ist das technische Support-Forum für WPML - das mehrsprachige WordPress-Plugin.

Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team beantwortet Anfragen im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.

Schlagwörter: 

This topic contains 7 Antworten, has 2 Teilnehmer.

Last updated by marcU-2 vor 1 Monat, 1 Woche.

Assigned support staff: Marcel.

Author Artikel
April 8, 2020 um 12:43 pm #5865765

marcU-2

Einige Strings im Frontend sind nicht mehr übersetzt, obwohl sie das definitiv einmal waren. Ggf. nach einem Update... kann aber nicht genau verifiziert werden. Die Strings erscheinen auch im String Translation Interface als übersetzt.

In diesem Zusammenhang hatte ich bereits folgendes Ticket gestartet:
https://wpml.org/de/forums/topic/string-translation-does-not-show-up-2/

Die Lösung mit der Auto String Register Funktion hat nur scheinbar funktioniert, da die Strings anscheinend nur solange übersetzt angezeigt werden, wie die Funktion aktiviert ist. Ist diese ausgeschaltet, wird wieder der nicht übersetzte String angezeigt. Neben dem String der in dem vorherigen Ticket bereits erwähnt wurde gibt es zwei weitere wo dies aufgefallen ist:

Der String: "A registration with your customer number is unfortunately not possible."
auf den Seiten hidden link und im Checkout

Sowie der String: "Club vouchers can unfortunately not be deducted directly, they are then deducted manually. Please enter the voucher number in the comment field." auf der Warenkorb Seite, sofern ein Produkt im Warenkorb liegt.

Alle Strings sind über das Theme registriert.

April 8, 2020 um 1:01 pm #5865887

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

Timezone: Europe/Madrid (GMT+02:00)

Hallo,

Vielen Dank, dass Sie den WPML Support kontaktiert haben.

Die Lösung mit der Auto String Register Funktion hat nur scheinbar funktioniert, da die Strings anscheinend nur solange übersetzt angezeigt werden, wie die Funktion aktiviert ist.

Ja, diese Funktion ist max. 2h lang aktiv und dient dazu die String welche im Frontend sichbar sind zu scannen und in der String Translation Tabelle sichtbar zu machen. Genauer gesagt scannt die Funktion die geöffnete Seite im Frontend und versucht alle sichtbaren Strings zu registrieren.

Haben Sie bereits geprüft, ob wie zuvor empfohlen der String doppelt in der Textdomain "sage" registriert ist?

Bitte um Info

Freundliche Grüße
Marcel

April 8, 2020 um 1:07 pm #5866043

marcU-2

Hallo Marcel,

vielen Dank für die schnelle Antwort. Ja ich habe bereits eine Dopplung geprüft.
Der String war ursprünglich auch mal ein weiteres Mal mit "strong" Markup in der Tabelle zu sehen. Diese Version habe ich aber gelöscht. Bei dem String aus dem ersten Ticket gab es keinen weiteren Eintrag, da dieser neu war. Die Frage ist halt, warum wird die Übersetzung im Frontend ausgegeben solange die Funktion aktiv ist und danach nicht mehr?

Gruß,
Bernhard

April 8, 2020 um 5:01 pm #5868221

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

Timezone: Europe/Madrid (GMT+02:00)

Hallo Bernhard,

Die Frage ist halt, warum wird die Übersetzung im Frontend ausgegeben solange die Funktion aktiv ist und danach nicht mehr?

Da diese Funktion eine statische Code-Analyse verwendet, um Strings zu lokalisieren, die im Theme sowie in den Plugins übersetzt werden müssen. In Ihrem Fall funktioniert es, da durch die Aktivierung der automatischen Registrierung WPML alle Strings registriert, die zur "Anzeigezeit" übersetzt werden müssen.

Ich vermute hier somit einen Fehler bei der Registrierung, da zur Runtime der getText() korrekt registriert wurde. Dies müsste ich mir genauer ansehen. Dazu bräuchte ich bitte temporären Zugriff (WP-Admin und FTP) auf Ihre Seite, vorzugsweise zu einer Test/Staging Seite, an der das Problem nach Möglichkeit repliziert wurde.

Ihre nächste Antwort ist als „Privat“ markiert, dies bedeutet nur Sie und ich haben Zugriff darauf.

❌ Bitte sichern Sie Ihre Datenbank und Website davor ❌

✙ Ich würde außerdem Ihre Erlaubnis benötigen, um Plugins und das Theme zu deaktivieren und erneut zu aktivieren sowie Konfigurationen auf der Seite zu ändern. Dies ist auch der Grund, warum das Backup wirklich wichtig ist.

Freundliche Grüße
Marcel

April 15, 2020 um 8:36 am #5911299

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

Timezone: Europe/Madrid (GMT+02:00)

Hallo Bernhard,

ich habe es nun mit den 2 Strings geprüft:

"A registration with your customer number is unfortunately not possible."

"Club vouchers can unfortunately not be deducted directly, they are then deducted manually. Please enter the voucher number in the comment field"

Soweit ich sehe sind die String innerhalb der woocommerce.php Datei im Theme korrekt über getText() registriert. Die Auto-Register Funktion zeigte mit bei jedoch keine Veränderung. Ich habe die "sage" Textdomains erneut gescannt, es wurde kein anderer/weiterer String lokalisiert.

Bitte versuchen Sie Folgendes:

#1 Entfernen Sie in den Themes die 2 nicht verwendeten Themes, welche ebenso die "sage" Textdomains verwenden
#2 Aktualisieren Sie alle verwendeten Plugins (WooCommerce, WPML) auf die neueste Version

Die Staging läuft bereits, ohne weitere Plugins um andere Fehlerquellen auszuschließen.

Freundliche Grüße
Marcel

April 17, 2020 um 7:54 am #5929873

marcU-2

Hallo Marcel,

es scheint nun zu funktionieren auf der Testseite. Habe die entsprechenden Schritte durchgefügt. Auf der Live Seite liegen jedoch keine weiteren Backups des Themes.
Ggf. wurde der Fehler tatsächlich durch das Update von Woo und WPML behoben...

Grüße,
Bernhard

April 17, 2020 um 8:07 am #5929907

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

Timezone: Europe/Madrid (GMT+02:00)

Hallo Bernhard,

ist das Problem somit gelöst? Wenn ja, können Sie bitte das Ticket als erledigt markieren, ansonsten geben sie mir bitte Bescheid.

Freundliche Grüße
Marcel

April 17, 2020 um 8:25 am #5929983

marcU-2

Hallo Marcel,

es scheint ja in der Testumgebung behoben zu sein. Wir werden dann sehen wie sich die Situation nach dem Update auf der Live Seite darstellt. Ggf. muss dann halt einfach ein neues Ticket erstellt werden. Vielen Dank für die Unterstützung und ein schönes Wochenende.

Grüße,
Bernhard