Цей рядок використовує дві різні функції, які потребують двох окремих пояснень.
__ ()
Це функція перекладу. Якщо налаштування виконано правильно, він переведе перший параметр зі списку попередньо перекладених рядків. Якщо інсталяція має файл із зібраним перекладом для використання цієї функції, вона використовуватиме її. Звичайно, плагін повинен упакувати власний переклад, звідси другий параметр. 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