Описание функции wp_localize_script()
Функция wp_localize_script() используется для передачи данных из PHP к JavaScript в WordPress. Она позволяет создавать объект JavaScript, который содержит переменные, доступные в скриптах, что позволяет легко локализовать строки и передавать динамические данные. Эта функция обычно используется в сочетании с enqueue скриптами, чтобы обеспечить их доступность на страницах сайта.
Важно отметить, что эта функция не только локализует строки, но и может передавать любые данные, включая массивы и объекты.
Параметры
$handle
Тип: string
Обязательный: Да
Описание: Уникальный идентификатор скрипта, к которому будут добавлены локализованные данные
Возможные значения:
$object_name
Тип: string
Обязательный: Да
Описание: Имя объекта JavaScript, в который будут помещены локализованные данные
Возможные значения:
$l10n
Тип: array
Обязательный: Да
По умолчанию: array()
Описание: Ассоциативный массив с локализованными строками и данными
Возможные значения:
Возвращаемое значение
Тип: void
Описание: Функция ничего не возвращает
Возможные значения:
Примеры использования
Пример передачи локализованных строк в JavaScript
$data = array(
'greeting' => 'Привет, мир!',
);
wp_localize_script('my_script', 'localized_data', $data);
Теперь вы можете использовать localized_data.greeting в вашем скрипте
Передача URL для AJAX-запросов в скрипт
$data = array(
'ajax_url' => admin_url('admin-ajax.php'),
);
wp_localize_script('my_script', 'localized_data', $data);
localized_data.ajax_url теперь доступен в JavaScript
Безопасность
Валидация входных данных: Параметры обрабатываются внутри функции
Санитизация: Функция не требует дополнительной санитизации, но убедитесь, что данные безопасны
Рекомендации: Избегайте передачи конфиденциальной информации через локализованные данные
— Связанные функции
Регистрирует и добавляет скрипты на страницу
Добавляет встроенный JavaScript после зарегистрированного скрипта
— Примечания
– Ограничения
Не может использоваться для передачи объектов сложной структуры без предварительной обработки
– Частые проблемы
- Ошибка при отсутствии зарегистрированного скрипта
- Некорректное имя объекта, если оно уже используется