Эта строка использует две разные функции, которые требуют двух отдельных объяснений.
__ ()
Это функция перевода. Если настройки выполнены правильно, он переведет первый параметр из списка предварительно переведенных строк. Если в установке есть файл с скомпилированным переводом для этой функции, он будет использовать его. Конечно, плагин должен упаковать свой перевод, отсюда и второй параметр. simplr-regговорит, __()что перевод строки 'Please fill out this form to sign up for this site'должен быть в файле перевода, связанном с 'simplr-reg'(это делается ранее в плагине с помощью load_plugin_textdomain()функции).
Затем функция возвращает перевод. Если нет перевода для возврата (например, текущий язык не имеет скомпилированного перевода, строка не имеет скомпилированного перевода для этого пакета и т. Д.), Возвращается исходный ввод.
Так что для сайта WordPress на английском языке, __( 'This', 'simplr-reg' )это функционально так же, как 'This'. Чтобы узнать больше о l10n (Локализация), прочтите об этом в кодексе:
http://codex.wordpress.org/I18n_for_WordPress_Developers
apply_filters ()
Эта функция позволяет вам при необходимости фильтровать значения, используемые плагином. Это одна из основных концепций, которую нужно понять разработчикам плагинов. WordPress расширяется с помощью хуков, которые в основном являются точками доступа, позволяющими вам определять время выполнения действий вашего плагина и / или манипулировать информацией / данными, которые использует WordPress, и т. Д.
Чтобы манипулировать данными, такими как фрагмент кода, о котором вы спрашивали, вы должны использовать функцию add_filter(). Вот основной пример того, как это работает:
add_filter( 'simplr-reg-instructions', 'wpse16573_my_filter' );
Вы, вероятно, узнаете первый аргумент там. Это тот же самый, который использовался add_filterвыше. Это имя крючка. Второй аргумент - обратный вызов фильтра. Это должен быть действительный обратный вызов функции ( подробнее об обратных вызовах здесь ). Эта строка кода говорит: «Когда 'simplr-reg-instructions'ловушка будет выполнена, запустите функцию с предоставленным мною обратным вызовом». apply_filters()выполняет ловушку, найденную в первом аргументе, что означает «выполнить все функции, зарегистрированные для этой ловушки». apply_filtersзатем передает все остальные аргументы (в данном случае 'Please fill out this form to sign up for this site') функциям этого фильтра. Итак, обратный вызов, который я использовал выше, должен выглядеть так:
function wpse16573_my_filter( $text ){
$text = "<strong>$text</strong>";
return $text;
}
В WordPress есть два типа хуков: фильтры (которые мы здесь используем) и действия. Основное различие между ними состоит в том, что фильтры ожидают, что вы что-то возвратите, а действия - нет. Итак, для этого фильтра мой пример выше добавляет html 'Please fill out this form to sign up for this site'и возвращает его.
Подробнее о действиях и хуках читайте здесь:
http://codex.wordpress.org/Plugin_API