• holle75

    (@holle75)


    Hallo!

    Wie immer der Wahnsinn mit den Emails in WP/WC/div Plugins.

    Also, germanized generiert ja zB die Konto Aktivierungs Email … tolle Sache, aber warum macht ihr den Text nicht konfigurierbar? Ich finde pers?nlich ein “Du” super, aber der Meinung ist nicht jeder. Jetzt habe ich über

    function custom_text_replace( $translated_text, $untranslated_text, $domain ) {
    switch ( $untranslated_text ) {
    case 'Thanks for creating an account on %s. Please follow the activation link to activate your account:':
    $translated_text = ( 'Es wurde für sie ein Benutzerkonto bei %s angelegt. Bitte folgen sie dem Link, um ihr Benutzerkonto zu best?tigen:', $domain ); break; case 'If you haven‘t created an account on %s please ignore this email.': $translated_text = ( 'Wenn sie bei %s kein Benutzerkonto er?ffnet haben, ignoriere sie diese E-Mail bitte.', $domain );
    break;
    case 'If you cannot follow the link above please copy this url and paste it to your browser bar: %s':
    $translated_text = __( 'Falls sie dem Link nicht folgen k?nnen, kopieren sie bitte folgende URL in die Adresszeile ihres Browsers: %s', $domain );
    break;
    }
    return $translated_text;
    }
    add_filter( 'gettext', 'custom_text_replace', 20, 3 );

    mal versucht, das umzubiegen. Hier macht mir nur das ‘ in haven‘t einen Strich durch die Rechnung. Und ja, klar kann ich das Template ins child-theme kopieren und ne Baustelle aufmachen. Ich habs lieber kompakt, was auch immer m?glich, in function.php.

    Frage: wie “übersetze” ich die Strings am Besten und/oder wie bekomme ich das ‘ funktional?

    EDIT: Mmh, jetzt ist mir gerade aufgefallen, dass es ja noch zig andere GD Mails gibt. Kein gutes Konzept in functions.php. Was w?re der richtige Weg?…. Am Rande: Full fledged Translation Plugins versuche ich mittlerweile zu umschiffen wie die Pest. Da weiss ja kein Mensch mehr, was die alles für nen Unsinn machen…. und nur um ordentliche Mails versenden zu k?nnen und 10 strings zu “übersetzen”?

Viewing 2 replies - 1 through 2 (of 2 total)
  • Plugin Author vendidero

    (@vendidero)

    Hi,

    kurz vorweg: Woo stellt standardm??ig keine UI bereit um E-Mail-Texte grafisch zu bearbeiten, d.h. dafür solltest du ein E-Mail-Customizer Plugin verwenden (z.B. YayMail), falls du das ben?tigst.

    Germanized unterstützt sowohl die formelle als auch die informelle Anrede – das h?ngt davon ab, ob du Deutsch oder Deutsch (Sie) in WP konfiguriert hast.

    Die von Woo vorgesehene Weise E-Mails anzupassen ist via template override – das wird in den Woo-Einstellungen unter E-Mails für die jeweilige E-Mail kurz erl?utert. S.a.: https://woocommerce.com/de/posts/how-to-customize-emails-in-woocommerce/

    Grü?e

    Thread Starter holle75

    (@holle75)

    Ja, … und ich hoffe noch immer, dass dieser Murks vielleicht irgendwann mal bereinigt wird. Was für ein Heckmeck um mal einen vorgegebenen string zu ?ndern.

    Da GD ja recht smart gebaut ist, dachte ich, du h?ttest vielleicht eine Alternative zu WP/WC Default schon eingebaut. Du/Sie, auch ja, nur leider bekommst du dann an ganz anderen Stellen wieder string Probleme, wenn du auf SIE umstellst. Emails/Mehrsprachigkeit/Strings ist WP/WC einfach … f?ngt mit s an

    Ich bin jetzt mit dieser function recht weit gekommen

    add_filter( 'gettext', 'fs_translate_strings_1', 20, 3 );
    function fs_translate_strings_1( $translation, $text, $domain ) {
    // Mails
    $translation = str_ireplace( 'You can access your account area to view your orders and change your password.', 'Um z.B. Bestellungen anzusehen oder ihr Passwort zu ?ndern, melden sie sich bitte hier in ihrem Benutzerkonto an:', $translation );
    $translation = str_ireplace( 'View Account', 'Zu ihrem Konto', $translation );
    $translation = str_ireplace( 'Dein Passwort wurde automatisch erstellt:', 'Ihr Passwort wurde automatisch erstellt:', $translation );
    $translation = str_ireplace( 'Zu deiner Kontrolle, nachstehend noch einmal deine Bestelldetails.', 'Zu ihrer Kontrolle, nachstehend noch einmal die Bestelldetails.', $translation );
    $translation = str_ireplace( 'Reset Password', 'Passwort zurücksetzen', $translation );
    $translation = str_ireplace( 'Wenn du bei %s kein Benutzerkonto er?ffnet hast, ignoriere diese E-Mail bitte.', 'Wenn sie bei %s kein Benutzerkonto er?ffnet haben, ignorieren sie diese E-Mail bitte.', $translation );
    $translation = str_ireplace( 'Es wurde für dich ein Benutzerkonto bei %s angelegt. Bitte folge dem Link, um dein Benutzerkonto zu best?tigen:', 'Es wurde für sie ein Benutzerkonto bei %s angelegt. Bitte folgen sie dem Link, um ihr Benutzerkonto zu best?tigen:', $translation );
    $translation = str_ireplace( 'Falls du dem Link nicht folgen kannst, kopiere bitte folgende URL in die Adresszeile deines Browsers: %s', 'Falls sie dem Link nicht folgen k?nnen, kopiere sie bitte folgende URL in die Adresszeile ihres Browsers: %s', $translation );
    $translation = str_ireplace( 'Vielen Dank! Wir haben deine Zahlung zur Bestellung %s erhalten. Deine Bestellung wird nun bearbeitet.', 'Vielen Dank! Wir haben ihre Zahlung zur Bestellung #%s erhalten. Ihre Bestellung wird nun bearbeitet.', $translation );
    $translation = str_ireplace( 'Bezahle für diese Bestellung', 'Bestellung best?tigen', $translation );
    // Shop
    $translation = str_ireplace( 'Vielen Dank. Deine Bestellung ist eingegangen.', 'Vielen Dank. Ihre Bestellung ist eingegangen.', $translation );
    $translation = str_ireplace( 'Quantity', 'Menge', $translation );
    $translation = str_ireplace( 'Für Bestellung bezahlen', 'Bestellung best?tigen', $translation );
    $translation = str_ireplace( 'Dein Warenkorb ist gegenw?rtig leer.', 'Ihr Warenkorb ist leer.', $translation );
    return $translation;
    }

Viewing 2 replies - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.