O que é um domínio de texto do tema?

19

Descobri que qualquer tema do WordPress usa essas funções, mas não entendo qual é o objetivo e o que é, nesse caso 'themify'? Aqui estão alguns exemplos em 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' ),
        ) );
    }

E no arquivo tempate:

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

E muitos mais! Minha dúvida é o que 'themify'significa? Qual é o seu propósito? Posso alterá-lo ou excluí-lo? Qual é o lugar 'themify', para?

Sok Vanrithy
fonte

Respostas:

23

Nesse caso, 'themify'é o domínio de texto definido para o Tema, usado para tornar o Tema traduzível . (Referência do Codex:) load_theme_textdomain().

Preparar um tema para tradução requer algumas etapas.

  1. Defina o domínio de texto do tema :

    load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );
  2. Defina cadeias traduzíveis no modelo.

    Isso é feito usando uma das poucas funções de conversão: __()(para strings retornadas ), _e()(para strings ecoadas ) e _x()/ _ex()(para strings de contexto gettext ). Existem outros, mas você entendeu ...

    Uma sequência de texto estática, como <p>Hello world!</p>, é quebrada em uma função de tradução apropriada, como <p><?php _e( 'Hello World!', 'themify' ); ?></p>, para disponibilizá-la para tradução.

  3. Gere a referência de arquivos .mo / .po
    sobre como editar arquivos de idioma

Chip Bennett
fonte
@SokVanrithy, consulte estas perguntas e respostas para saber como lidar com .mo/.poarquivos. (Chip, eu não adicionou o link em seu Resposta como você pode ter outra recomendação :)
brasofilo
11
@brasofilo fique à vontade para adicioná-lo, se quiser. Acho que está fora do escopo da pergunta feita, mas ainda assim é uma informação útil.
Chip Bennett
Por que você mudaria isso? Você está bifurcando o tema?
Chip Bennett
Sim, eu quero me livrar deles. Eu baixei um tema do Webdesigndepot e ele chama base theme. Perguntei ao autor que eu seria capaz de alterar os códigos originais? Eles são permitidos porque é o tema em branco básico para quem deseja ter a estrutura para o tema personalizado. Além disso, é o presente do autor para dar ao leitor. Minha dúvida é como acima!
Sok Vanrithy
11
Claro, você pode se livrar deles; mas também não dói apenas deixá- los. Você pode até mudar textdomainpara uma string diferente, para referenciar o seu tema bifurcado. As práticas recomendadas de desenvolvimento incluem tornar os Temas traduzíveis, por isso aconselho a não removê-los completamente. Dito isto, você certamente pode , se quiser.
Chip Bennett