Come funziona printf (__ ()); lavoro?


12

Oggi lavoro su un tema per comprendere meglio WordPress e il templating. Ho scoperto questo:

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

So che mostra "Progettato da Blub" (Dove Blub è collegato) Ma cosa __()significa o perché c'è un inserto di stringa? A cosa serve Anyword?

Qualcuno può spiegare esattamente questa linea per me?

Risposte:


8

È usato per tradurre il testo .

Il secondo argomento è una specie di spazio dei nomi (qui chiamato dominio) per recuperare la traduzione (ad esempio da un file dedicato o qualcos'altro).

Quindi Anywordqui, dovrebbe essere il ragazzo dietro il modello, o la società o quello che mai può essere un dominio / spazio dei nomi.

modificare:

Il documento di wordpress fornisce ulteriori spiegazioni su come internazionalizzare un plugin :


Aggiungi questo al codice del plugin per assicurarti che i file della lingua siano caricati:

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

Per recuperare una stringa è sufficiente utilizzare __('String name','your-unique-name');per restituire la traduzione o _e('String name','your-unique-name');per fare eco alla traduzione. Le traduzioni andranno quindi nella cartella / lingue del plug-in.


Per il tuo plugin / tema, your-unique-namesembra essere Anyword.


Ci sono alcuni file di lingua nel tema. Come fa l'argomentazione a usarli solo per "Anyword"?

Ho aggiornato la mia risposta con una parte migliore del documento WP.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.