Was ist eine Theme-Textdomain?


19

Ich habe festgestellt, dass jedes WordPress-Theme diese Funktionen verwendet, aber ich verstehe nicht, wozu es dient und was es in diesem Fall ist 'themify'. Hier einige Beispiele in Themify functions.php:

1).

load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );

2).

if (function_exists('register_nav_menus')) {
        register_nav_menus( array(
            'main-nav' => __( 'Main Navigation', 'themify' ),
            'footer-nav' => __( 'Footer Navigation', 'themify' ),
        ) );
    }

Und in vorläufiger Datei:

3). <?php _e( 'Sorry, nothing found.', 'themify' ); ?>

Und viele mehr! Mein Zweifel ist, wofür steht 'themify'? Was ist ihr Zweck? Kann ich es ändern oder löschen? Wofür ist der Ort 'themify'?

Antworten:


23

In diesem Fall 'themify'wird die definierte Textdomäne für das Thema verwendet, um das Thema übersetzbar zu machen . (Codex-Verweis:) load_theme_textdomain().

Um ein Thema für die Übersetzung vorzubereiten, sind einige Schritte erforderlich.

  1. Definieren Sie die Textdomäne des Themas :

    load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );
  2. Definieren Sie übersetzbare Zeichenfolgen in der Vorlage.

    Dies geschieht mit Hilfe eines der wenigen Übersetzungsfunktionen: __()(für zurück Strings), _e()(für wiederholte strings) und _x()/ _ex()(für gettext Kontext Strings). Es gibt andere, aber Sie haben die Idee ...

    Eine statische Textzeichenfolge, z. B. <p>Hello world!</p>, wird in eine entsprechende Übersetzungsfunktion eingeschlossen, z. B. <p><?php _e( 'Hello World!', 'themify' ); ?></p>um sie für die Übersetzung verfügbar zu machen.

  3. Generieren Sie die .mo / .po - Dateien
    verweisen auf , wie zu bearbeiten Sprachdateien


@SokVanrithy, Informationen zum Umgang mit Dateien finden Sie in diesen Fragen und Antworten .mo/.po. (Chip, ich habe den Link nicht zu deiner Antwort hinzugefügt, da du möglicherweise eine andere Empfehlung hast :)
brasofilo

1
@brasofilo Sie können es gerne hinzufügen, wenn Sie möchten. Ich denke, es ist nicht in Frage zu stellen, aber dennoch nützliche Informationen.
Chip Bennett

Warum würdest du es ändern? Gabeln Sie das Thema?
Chip Bennett

Ja, ich möchte sie loswerden. Ich habe ein Thema von Webdesigndepot heruntergeladen und es ruft auf base theme. Ich fragte den Autor, ob ich die Originalcodes ändern könne. Sie sind zulässig, da es sich um das leere Basisthema handelt, für das die Struktur für das benutzerdefinierte Thema festgelegt werden soll. Außerdem ist es das Geschenk des Autors, das er dem Leser geben kann. Mein Zweifel ist wie oben!
Sok Vanrithy

1
Sicher, Sie können sie loswerden; aber es tut auch nicht weh, sie einfach zu verlassen . Sie können sogar die textdomainZeichenfolge ändern , um auf Ihr gegabeltes Thema zu verweisen. Entwicklung Best Practices machen Themen übersetzbar, so rate ich würde gegen sie vollständig zu entfernen. Das heißt, Sie sicherlich können , wenn Sie zu wählen.
Chip Bennett
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.