Как через код загрузить po-файл с переводом в Drupal 6

Po-файл - это текстовый файл в определенном формате, который содержит перечень строк на оригинальном языке (обычно на английском) и переводы к ним.

В Drupal уже есть инструменты для удобного импорта переводов - это целый раздел "Перевод интерфейса" доступный в административной части системы. Но на случай, если нужно загрузить файл с переводом (po-файл) в своем модуле, приведу пример как это можно сделать:

// Подключаем нужную библиотеку
include_once 'includes/locale.inc';
// Указываем название po-файла
$file_name = 'ru.po';
// Создаем класс для po-файла
$file = new stdClass();
$file->filename = $file_name;
// Указываем путь к po-файлу
$file->filepath = $_SERVER['DOCUMENT_ROOT'] . base_path() .'sites/default/files/'. $file_name;
// Загружаем перевод из файла
if (_locale_import_po($file, 'ru', LOCALE_IMPORT_OVERWRITE, 'default'))
	watchdog('MyModule', 'Import from %file is done',
		array('%file' => $file->filepath), WATCHDOG_NOTICE);
else
	watchdog('MyModule', 'Import error from %file',
		array('%file' => $file->filepath), WATCHDOG_ERROR);

Наслаждаемся как работает загрузка! :)