¿Cómo funciona printf (__ ()); ¿trabajo?

10

Hoy me ocupo de un tema para comprender mejor WordPress y las plantillas. Descubrí esto:

<?php 
printf( 
    __('Designed by %s', 'Anyword'), 
    '<a href="http://www.example.com">Blub</a>'
); 
?>

Sé que muestra "Designed by Blub" (donde Blub está vinculado) Pero, ¿qué significa __() o por qué hay una inserción de cadena? ¿Para qué es el Anyword?

¿Puede alguien explicarme esta línea exactamente?

    
pregunta Denny Mueller 02.07.2012 - 16:56

1 respuesta

7

Se utiliza para traducir texto .

El segundo argumento es un tipo de espacio de nombres (llamado dominio aquí) para recuperar la traducción (por ejemplo, de un archivo u otra cosa).

Entonces, Anyword aquí, debe ser el tipo detrás de la plantilla, o la compañía o lo que sea un dominio / espacio de nombres.

edit:

El documento de wordpress brinda más explicaciones sobre cómo internacionalizando un complemento :

Agregue esto al código del complemento para asegurarse de que los archivos de idioma estén cargados:

load_plugin_textdomain('your-unique-name', false, basename( dirname( __FILE__ ) ) . '/languages' );

Para obtener una cadena, simplemente use __('String name','your-unique-name'); para devolver la traducción o _e('String name','your-unique-name'); para repetir la traducción. Las traducciones irán a la carpeta de su plugin / languages.

Para tu plugin / tema, el your-unique-name parece ser Anyword .

    
respondido por el j0k 02.07.2012 - 17:03

Lea otras preguntas en las etiquetas