Was für ein Ärger... da möchte man nur schnell die Schaltfläche "eintrag erstellen" im Advanced Forum einer Drupal 7 installation übersetzen und verschenkt eine halbe Stunde Lebenszeit... warum?
Die Übersetzung "eintrag erstellen" war nicht zu finden. Lediglich "New @node_type", was hier mit "@node_type erstellen" zu übersetzen ist.
Suchen, suchen, suchen... keine Lösung!
Also ab in den Code und siehe da... des Rätsels Lösung! Die Entwickler schneiden einfach aus dem Begriff "Forumeintrag" das "Forum" heraus, sodass es nur noch "eintrag" heißt, aber nicht separat übersetzt werden kann...
// Loop through all node types allowed in this forum.
foreach ($allowed_types as $type) {
// Check if this node type can be created by current user.
if (node_access('create', $type)) {
// Fetch the "General" name of the content type.
$node_type = t(node_type_get_name($type));
// Remove the word "Forum" out of "Forum topic" to shorten it.
// @TODO: this is a little dodgy and may not work right with
// translations. Should be replaced if there's a better way.
$node_type = str_replace('Forum', '', $node_type);
// Push the link with title and url to the array.
$forum_types[$type] = array(
'name' => $node_type,
'href' => 'node/add/' . str_replace('_', '-', $type) . '/' . $tid,
);
}
}
?>
(advanced_forum/advanced_forum.module, function advanced_forum_node_type_create_list($tid))
Zwar existiert eine entsprechende Anmerkung, die hilft aber auch nicht viel... daher habe ich das Ergebnis ($node_type) nun erneut in t() gekapselt, um es übersetzbar zu machen... und siehe da... es klappt!
Solltet ihr also auf dasselbe Problem stoßen, verschenkt nicht Eure Lebenszeit und geht direkt in den Code... Ich werde das Problem nun einmal als Issue melden. Schade, dabei ist das Advanced Forum Modul doch ansonsten schlau gemacht!
Update: Hier findet ihr den Issue: https://drupal.org/node/1506628