it-swarm.com.de

Überschreiben der Standard-Wordpress-Kernsprachendatei

Ich habe ein kleines Problem und habe mehrere Lösungen ausprobiert, aber keine davon hat leider funktioniert. Vielleicht hat jemand eine Ahnung warum :-)

Ich verwende das Syntax-Thema von Automattic, das eine eigene Sprachdatei hat, aber es verwendet auch die Standard-Wordpress-Kernsprachdatei, um einige Wörter im Frontend meines Themas anzuzeigen.

Ich habe die Sprache auf Niederländisch (nl_NL) eingestellt und ein Wort ist nicht richtig übersetzt, nämlich das Wort 'Aside', das auch in 'Aside' übersetzt ist. Dies ist jedoch kein niederländisches Wort und ich möchte es in "Notities" ändern.

Ich habe diese drei Lösungen ausprobiert, aber sie haben alle nicht funktioniert :-( Vielleicht hat das etwas damit zu tun, dass das ursprüngliche Wort 'Aside' auch in der Wordpress-Kernsprachendatei in 'Aside' übersetzt wird? Ich bin es einfach raten :-)

  1. Option 1, die nicht funktioniert hat
  2. Option 2 idem.
  3. Option 3 mit dem Plugin 'Quick Localization'

Dies ist das Skript in wp-includes/post-formats.php, das sich auf die Anzeige des Wortes 'Aside' im Frontend meiner Website bezieht:

    function get_post_format_strings() {
        $strings = array(
            'aside'    => _x( 'Aside',    'Post format' ),
        );
        return $strings;
    }

Ich hoffe, jemand hat eine gute Idee. Ich würde es sehr schätzen.

Danke und Grüße, Bark

1
Bark Berendsen

Korrektur der Antwort von Max. Um diesen Ansatz zu verwenden, benötigen Sie den Filter gettext_with_context , da Ihre Zeichenfolge über _x() not __() übersetzt wird.

Beachten Sie, dass das übergebene gefilterte Argumenttranslationist. Überprüfen Sie daher die Quellzeichenfolge ($text und $context), um sicherzustellen, dass Sie das richtige Element filtern.

add_filter( 'gettext_with_context', 'added_translation', 20, 4 );

function added_translation( $translation, $text, $context, $domain )
{
  if( 'Aside' === $text && 'Post format' === $context ){
    $translation = 'Aan de kant';
  }
  return $translation;
}

Sie bestimmen genau, wie Sie die Zeichenfolge erkennen und ob Sie auch überprüfen, ob Niederländisch das aktuelle Gebietsschema ist. Dieser Filter funktioniert jedoch und sollte funktionieren, unabhängig davon, welches Thema Sie verwenden.

Wenn Sie viele Zeichenfolgenverbesserungen vornehmen, empfehle ich, eine Übersetzungsdatei zu verwenden, diezusätzlichzu den installierten Übersetzungen geladen wird. Beispielanleitung hier Verwenden von Loco Translate, um Ihre eigene benutzerdefinierte Datei hinzuzufügen. (Offenlegung: mein Plugin)

1
Tim