Итак, проснулся я в хорошем настроении и решил наконец-то облегчить жизнь тем людям, которых раздражает кол-во запросов к базе у Друпала 5 при переводе. Для Друпал 4.7 я уже такое делал, пришла очередь пятого. Итак, без патча к сожалению не обошлось, можно и не надеяться.
файл includes/common.inc
<?php
function t($string, $args = 0) {
global $locale;
//////////////////////////////////////////////////////////////
if (function_exists('locale_static') && $locale != 'en') {
$string = locale_static($string);
}
else
///////////////////////////////////////////////////////////////
if (function_exists('locale') && $locale != 'en') {
$string = locale($string);
}
if (!$args) {
return $string;
}
else {
// Transform arguments before inserting them
foreach ($args as $key => $value) {
switch ($key[0]) {
// Escaped only
case '@':
$args[$key] = check_plain($value);
break;
// Escaped and placeholder
case '%':
default:
$args[$key] = theme('placeholder', $value);
break;
// Pass-through
case '!':
}
}
return strtr($string, $args);
}
}
?>
Добавлены строчки, которые между вот такими полосками - ///////////////////////////////////////////////////////////////.
C патчами закончили. Приаатачиваю МОДУЛЬ, никаких теперь левых конвертеров :)
PS Как вы понимаете, модуль сырой и не особенно тестированный, так что просьба сбрасывать сюда вопросы и найденные баги и фичи.