Was nützt wpml-config.xml, wenn Sie String Translation haben?

Lesezeit: 4 Minuten

Benutzer-Avatar
dingo_d

Was genau ist die Verwendung von wpml-config.xml Datei in WPML? Vor allem, wenn ich Übersetzungsmanagement und Add-Ons für die Übersetzung von Zeichenfolgen aktiviert habe? Damit scanne ich einfach mein Theme, das Plugin findet alle übersetzbaren Strings und ich kann sie einfach übersetzen. Und ich dupliziere Seiten usw., wenn ich sie übersetze.

Was genau ist also der Zweck dieser .xml-Datei? Ich bin etwas verwirrt :\

GEBILDETE BEARBEITUNG

Nachdem ich ein wenig mehr mit wpml gearbeitet hatte, fand ich auch heraus, dass, wenn Sie beispielsweise einen Copyright-Text erstellen, der in der Fußzeile Ihres Customizers angezeigt wird, die einzige Möglichkeit, diesen Text mit wpml zu übersetzen, die Verwendung ist wpml-config.xml Datei. Grundsätzlich müssen Sie also für jedes textbasierte Eingabefeld in Ihrem Design wpml angeben, dass es sich um einen übersetzbaren Text handeln kann. Und du würdest es so machen:

<wpml-config>
    <admin-texts>
        <key name="blogname" />
        <key name="blogdescription" />
        <key name="theme_mods_language_textdomain">
            <key name="copyright" />
        </key>
    </admin-texts>
</wpml-config>

Wo Sie die Textdomäne der Sprache angeben müssen (oder den Themennamen, bei diesem noch nicht 100% sicher). Darin zielen Sie auf den Einstellungsnamen ab, der das Eingabefeld enthält ('type' => 'text' Felder).

Ich überlege, dass das gleiche mit den Metaboxen gemacht werden könnte, die etwas auf dem Frontend ausgeben, aber Sie würden ein anderes Tag in Ihrem benötigen .xml.

  • können Sie mit wpml wie get_option(‘something’) übersetzen; oder irgendein Text, der in der db/options-Tabelle gespeichert wurde? Angenommen, Sie geben einen Teil des get_option-Werts über den wp_head-Hook zurück, und die Besucher Ihrer Website ändern in diesem Fall die Sprache von Englisch auf Französisch, was auch immer Sie versucht haben echo get_option(‘test’); wird es sich ändern? oder wenn Sie _e(get_option(‘test’),’yourtextdomain’); ändern; Funktioniert es mit dem Ändern einer anderen Sprache? nein richtig, nur aus diesem Grund verwenden wir wpml-config.xml wpml.org/documentation/support/language-configuration-files

    – Vignesh Pichamani

    22. Dezember 2014 um 13:01 Uhr


  • Ich habe versucht, meine wp_options-Tabelle in der Datenbank zu durchsuchen (mit phpmyadmin), um zu sehen, welche Optionen ich eingeben soll, aber ich bin mir nicht sicher, was ich eingeben soll. Wie finde ich auch alle Zeichenfolgen, die in die XML-Datei eingefügt werden sollen? In dem Link, den Sie gepostet haben, heißt es, dass ich in der Einrichtung mehrsprachiger Inhalte alle Informationen habe, die ich brauche. Also sollte ich diese einfach in eine .xml-Datei kopieren?

    – dingo_d

    22. Dezember 2014 um 13:35 Uhr

  • Nehmen wir an, Sie haben ein benutzerdefiniertes Plugin mit benutzerdefiniertem Beitragstyp oder get_option oder benutzerdefinierter Tabelle verwendet. In diesem Szenario hilft es bei der Verwendung der XML-Datei, da ich sie auch für mein Projekt verwende. Möglicherweise haben Sie keine benutzerdefinierten Dinge wie Funktionen oder ähnliches ausprobiert in diesem Fall ist es möglicherweise nicht erforderlich

    – Vignesh Pichamani

    22. Dezember 2014 um 13:39 Uhr


  • Also sollte ich dort unter den Schlüssel mit Werten wie blogname oder blogdescription eingeben? Weil einige Optionen nur 0 oder 1 (wahr oder falsch) sind. Und wenn ich es mit und ohne String-Übersetzungs-Add-On versucht habe, und ohne konnte ich nichts aus der .xml-Datei sehen.

    – dingo_d

    22. Dezember 2014 um 13:51 Uhr

Hier sind meine kleinen detaillierten Informationen, sagen wir, Sie haben ein benutzerdefiniertes Plugin erstellt und es mit wpml kompatibel gemacht! Sie haben also po-Dateien erstellt, um Labels zu übersetzen, und es ist so etwas wie unten und es wird entsprechend funktionieren.

<?php _e('Hi Fresher','your_text_domain');?> 

aber wenn Sie das gleiche wie so etwas versucht

<?php _e(get_option('testmyname','your_text_domain'));?> //testmyname contain Hi Fresher

Wird mit normaler Übersetzung gearbeitet? und Sie können es nicht wpml-kompatibel machen. Um dieses Problem zu überwinden, stellt wpml bereits eine XML-Datei bereit, um die Übersetzung bereit zu erfüllen.

In diesem Fall können Sie es einfach als verwenden und müssen einige weitere Informationen in die Datei wpml-config.xml eingeben, die sich im Stammordner von irgendetwas (Theme-Ordner/Plugin-Ordner) befinden sollte. Erstellen Sie die Datei wpml-config.xml und tun Sie dies

<wpml-config>
    <admin-texts>
        <key name="blogname" />
    </admin-texts>
</wpml-config>

Der obige Code befindet sich in der Datei wpml-config.xml und sollte im Stammordner Ihres Designs abgelegt werden. Ich habe es zu Testzwecken selbst versucht. Hier ist das Ergebnis.

Screenshot ist für vor der Übersetzung, nach der Übersetzung und der französischen Ausgabe

Vor der Übersetzung und der wpml-config.xml-Datei, die in der Zeichenfolgenübersetzung von wpml aufgeführt ist
Vor der Übersetzung

Nach Übersetzen Sie Ihren benutzerdefinierten Text
Nach der Übersetzung

Beispielausgabe, die ich basierend auf der Dropdown-Liste auf Französisch geändert habe
Beispielausgabe

Ich hoffe es hilft 🙂

Vielen Dank.

  • Ich habe gerade festgestellt, dass in meiner wp_option-Tabelle nur 25 Elemente angezeigt wurden, und als ich 500 eingab, gab es noch viel, viel mehr. Ich werde das durchgehen und diejenigen aufschreiben, die übersetzbar sind. Danke für die Erklärung!

    – dingo_d

    23. Dezember 2014 um 7:22 Uhr

1345920cookie-checkWas nützt wpml-config.xml, wenn Sie String Translation haben?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy