Я использую CakePHP 1.2. Я определил все строки, для которых мне нужна локализация в функции gettext. например
файл app / views / posts / add.thtml
<?php echo __("Text1.","feature_one"); ?>
<?php echo __("Text2.","feature_two"); ?>
файл app / views / posts / edit.thtml
<?php echo __("Text3.","feature_one"); ?>
<?php echo __("Text4.","feature_two"); ?>
При создании файлов pot я использую команду cake i18n extract из папки консоли
cake i18n extract
С помощью этой команды я могу извлечь файлы пота в 2 форматах, в одном из которых все строки извлекаются и объединяются в один файл с именем «default.pot», или все строки извлекаются в независимые файлы с именами файлов в качестве относительный путь к файлу, например «-Posts-add.pot» & «-Posts-edit.pot».
Что мне нужно, так это генерировать файлы банка на основе токенов / доменов, определенных в функции gettext. то есть один файл для каждого определенного токена / домена, содержащий все строки в этом домене. например «Feature_one.pot» & «Feature_two.pot».
Используйте __d () вместо __ (). Смотрите руководство.
Это должно извлечь их в файл, названный в честь первого аргумента. Я не использовал 1.2 годами, но функция все еще существует в 3.0, и я думаю, что она никогда не менялась.
Других решений пока нет …