При использовании авто сборки .po-файлов плагинов есть баг - не добавляются переводы создаваемые функцией sprintf_wp.
Старый друг подсказал решение проблемы:
в waGettextParser.class.php добавляем
if ($this->config['debug'] && !$debug) {
print "Search functions:\n\t".implode("\n\t", $function_pattern)."\n";
}
// fix begin
if (in_array('sprintf_wp', $function_pattern)) {
$regex = <<<'END'
@
sprintf_wp\(
(
(?: " (?: [^"\\] | \\. )*+ "
| ' (?: [^'\\] | \\. )*+ '
| [^"',()]+
| \( (?1) \)
)*+
)
@xs
END;
$text = preg_replace($regex, '_wp($1)', $text);
}
// fix end
$commas = array('"', "'");
$word_pattern = '[\\r\\n\\s]*%1$s\\s*((?:\\\\%s|[^%1$s\\r\\n])+?)\\s*%1$s\\s*';
foreach ($commas as $comma) {
От wa оперативности не жду, поэтому публикую здесь.
Осталось решить проблему с попаданием в список переводов-дублей из приложений при использовании [`...`].
0 комментариев