Zum Inhalt springen Zur Seitenleiste springen

Dieses Thema ist gelöst. Hier finden Sie eine Beschreibung des Problems und der Lösung.

Problem:
Sie möchten wissen, wie Sie die Checkboxen im Germanize Plugin für WooCommerce übersetzen können.
Solution:
Wir empfehlen Ihnen, die Lösung auf unserer Errata-Seite zu verwenden, die speziell für die Übersetzung von rechtlichen Checkboxen im Germanize Plugin entwickelt wurde. Besuchen Sie bitte Germanized Translation of Legal Checkboxes für weitere Details. Wir haben diese Lösung bereits erfolgreich in einer Sandbox-Umgebung getestet.

Bitte beachten Sie, dass diese Lösung möglicherweise veraltet oder nicht auf Ihren spezifischen Fall anwendbar ist. Wir empfehlen Ihnen, die Seite mit bekannten Problemen (https://wpml.org/known-issues/) zu überprüfen, die Version der dauerhaften Lösung zu verifizieren und zu bestätigen, dass Sie die neuesten Versionen von Themes und Plugins installiert haben. Sollten weiterhin Probleme auftreten, zögern Sie nicht, ein neues Support-Ticket zu eröffnen. Besuchen Sie unser Support-Forum unter WPML Support-Forum.

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 antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.

Dieses Thema enthält 9 Antworten, hat 0 Stimmen.

Zuletzt aktualisiert von Marcel Vor 3 Wochen, 5 Tage.

Assistiert von: Marcel.

Autor Beiträge
Juli 15, 2025 um 4:04 pm #17238943

buenyaminD

Nein, die Checkboxen wurden über das Backend im Germanize Plugin gesetzt.

AGB Checkbox:
versteckter Link

Widerruf Checkbox:
versteckter Link

Konto Checkbox:
versteckter Link

Newsletter Checkbox über den Brevo Account: siehe Anhang

Wie kann ich die Boxen nun übersetzen lassen?
Vielen Dank für Ihre Hilfe!

Juli 16, 2025 um 11:38 am #17241708

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

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

Hallo,

vielen Dank für Ihre Geduld.

Ich habe die betroffenen Strings zur besseren Nachvollziehbarkeit durchnummeriert und kann bestätigen, dass sie im Einträge, welche in den Germanized Einstellungen gesetzt werden, nicht registriert werden.

Das Verhalten konnte ich in einer isolierten Sandbox erfolgreich reproduzieren und habe den Fall zur weiteren Analyse an unser Compatibility-Team übergeben.

Viele Grüße
Marcel

Juli 16, 2025 um 4:31 pm #17243046

buenyaminD

Ok vielen Dank!
Was bedeutet dies nun für mich? Wie geht es weiter?

Juli 17, 2025 um 7:00 am #17244102

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

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

Hallo,

Unser Kompatibilitäts-Team hat den Fall geprüft, und die Vermutung hat sich bestätigt: Der String wurde nicht als admin_texts_*-Eintrag gespeichert. Der Grund dafür ist, dass alle Checkbox-Einträge gemeinsam in einem einzigen, serialisierten Datenbankeintrag verwaltet werden. Daher ist eine direkte Übersetzung über admin_texts_* als Textdomain nicht möglich.

1) Fügen Sie folgenden Eintrag in die functions.php Datei Ihres Child-Themes hinzu:

if ( class_exists( 'Sitepress' ) ) {

    add_action( 'update_option_woocommerce_gzd_legal_checkboxes_settings', function( $old_value, $new_value ) {
        if ( is_array( $new_value ) ) {
            foreach ( $new_value as $id => $checkbox_data ) {
                if ( ! empty( $checkbox_data['label'] ) ) {
                    do_action( 'wpml_register_single_string', 'woocommerce-germanized', "legal_checkbox_custom_label_{$id}", $checkbox_data['label'] );
                }

                if ( ! empty( $checkbox_data['error_message'] ) ) {
                    do_action( 'wpml_register_single_string', 'woocommerce-germanized', "legal_checkbox_custom_error_{$id}", $checkbox_data['error_message'] );
                }
            }
        }
    }, 10, 2 );

    add_filter( 'woocommerce_gzd_legal_checkbox_fields', function( $options ) {
        foreach ( $options as $id => &$checkbox ) {
            if ( isset( $checkbox['label'] ) ) {
                $checkbox['label'] = apply_filters( 'wpml_translate_single_string', $checkbox['label'], 'woocommerce-germanized', "legal_checkbox_custom_label_{$id}" );
            }

            if ( isset( $checkbox['error_message'] ) ) {
                $checkbox['error_message'] = apply_filters( 'wpml_translate_single_string', $checkbox['error_message'], 'woocommerce-germanized', "legal_checkbox_custom_error_{$id}" );
            }
        }

        return $options;
    }, 10 );

}

2) Speichern Sie die Checkboxen erneut ab (alle)

3) Öffnen Sie WPML -> String Translation, um die Checkboxen zu übersetzen.

Viele Grüße
Marcel

Juli 17, 2025 um 11:12 am #17245377

buenyaminD

Vielen Dank! Die Strings konnte ich nun finden und übersetzen. Auf der Kassenseite werden die Checkboxen allerdings noch immer in deutsch angezeigt:
versteckter Link

Könnten Sie sich dies bitte einmal anschauen? Danke sehr!

checkoutboxen.jpg
Juli 21, 2025 um 2:58 pm #17256398

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

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

Hallo,

folgende Lösung funktioniert nun: https://wpml.org/errata/germanized-translation-of-legal-checkboxes/.

Wir werden dies an die Germanized Autoren zur Integration in deren Code weiterleiten. Ich habe es bereits auf der Sandbox via versteckter Link getestet.

Viele Grüße
Marcel

Juli 22, 2025 um 12:02 pm #17259088

buenyaminD

Guten Tag,

wie beschrieben klappt die Übersetzung im Backend (siehe Anhang). Auf der Checkoutseite werden die Texte dennoch noch immer auf deutsch angezeigt (siehe Anhang).
Die function.php im Child Theme habe ich gemäß Ihren Angaben angepasst.

Bitte schauen Sie nicht in eine Sandbox, sondern auf meine Originalseite. Sie haben ja den direkten Zugang, sowohl zum Backend als auch zum FTP.

Vielen Dank!

checkout auf deutsch.jpg
übersetzung klappt.jpg
Juli 22, 2025 um 12:18 pm #17259186

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

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

Guten Tag,

Bitte schauen Sie nicht in eine Sandbox, sondern auf meine Originalseite. Sie haben ja den direkten Zugang, sowohl zum Backend als auch zum versteckter Link;
Zugangsdaten werden nach der Ticketbehebung automatisch bereinigt. Seit das LearnDash Ticket geschlossen ist, habe ich keinen Zugriff mehr auf Ihre Installation.

1) Fügen Sie den Code aus dem Erratum wie bereits erledigt in der functions.php Ihres Child Theme ein.

2) Öffnen Sie "WooCommerce > Settings > Germanized > Legal checkboxes > Allgemein" und führen Sie eine kleine Änderung im Text der Labels durch und speichern Sie für Deutsch.

3) Wechseln Sie nun über den Top-Bar-Sprachumschalter im Backend zu Englisch und fügen Sie die gewünschte Übersetzung dort ein (direkt in den Germanized Settigngs). Der genannte Code führt dazu, dass sich die Einträge dann nicht mehr überschreiben und je Sprache angelegt werden können.

Eine Übersetzung über String Translation ist aktuell nicht möglich, die Autoren von Germanized werden darüber informiert.

Viele Grüße
Marcel

Juli 22, 2025 um 4:43 pm #17260478

buenyaminD

Das Übersetzen der Checkboxen funktioniert jetzt!! Vielen Dank! =)

Jetzt fehlt im Checkout nur noch der von Germanize generierte "Jetzt kaufen" Button, sowie die Newslettercheckbox, welche direkt von der Brevo Webseite aus gesteuert wird. Zu beidem finden Sie Screenshots im Anhang mit der Bitte um Hilfe!

Danke sehr!

Brevo Newsletter Checkbox.jpg
germanize buttonfeld.jpg
jetzt kaufen button.jpg
Juli 22, 2025 um 4:47 pm #17260523

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

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

Bitte erstellen Sie je Anliegen ein separates Ticket mit einem neuen Seitenzugang, da es sich nicht mehr um ein Germanized-spezifisches Checkbox Thema handelt.

Wenn mehrere Themen in einer Antwort vermischt werden, ist es mir leider nicht möglich, das Ticket sauber zu trennen und ein neues daraus zu erstellen.

Vielen Dank und viele Grüße
Marcel