Як працює printf (__ ()); робота?


12

Сьогодні я працюю над темою, щоб краще зрозуміти WordPress та шаблони. Я виявив це:

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

Я знаю, що це показує "Designed by Blub" (Де Блуб пов'язаний). Але що __()означає або чому там вставляється рядок? Для чого потрібне слово?

Чи може хтось точно пояснити мені цей рядок?

Відповіді:


8

Він використовується для перекладу тексту .

Другий аргумент - це вид простору імен (тут називається домен) для отримання перекладу (наприклад, із виділеного файлу чи чогось іншого).

Отже, Anywordтут повинен бути хлопець, що стоїть за шаблоном, або компанія чи що-небудь, що може бути доменом / простором імен.

редагувати:

Документ з wordpress надає більше пояснень щодо того, як інтернаціоналізувати плагін :


Додайте це до коду плагіна, щоб переконатися, що мовні файли (файли) завантажені:

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

Для отримання рядка просто використовуйте __('String name','your-unique-name');для повернення перекладу або _e('String name','your-unique-name');повторення перекладу. Потім переклади перейдуть до папки / Мови вашого плагіна.


your-unique-nameЗдається, ваш плагін / тема є Anyword.


У темі є кілька мовних файлів. Як аргументація знає, щоб використовувати їх лише для "Будь-якого слова"?

Я оновив свою відповідь в більшій частині від документа WP.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.