Label von Exposed Filtern übersetzbar machen

Jemand hatte mich heute gefragt ob es möglich sei die Beschriftungen von Exposed Filter übersetzbar zu machen. Eine Lösung ist die View mit hook_views_default_views() zu integrieren und dort das Label mit einer t() Funktion umgegeben. Jedoch gibt es eine viel bessere, einfachere und für alle Views gültige Methode ein kleines Modul ( Im Anhang)
Dafür braucht man nur folgenden Code:
<?php
/**
* Implementation of hook_form_alter()
*/
function translate_filter_form_alter($form_id, &$form) {
// if you have a views_exposed_filter
if ($form_id == 'views_filters') {
// take each exposed filters lable and wrap it with a t function
foreach ($form['view']['#value']->exposed_filter as $key => $exposed) {
$exposed['label'] = t($exposed['label']);
$form['view']['#value']->exposed_filter[$key] = $exposed;
}
}
}
?>

Fertig
Das Problem ist, man findet die Strings nicht mit dem Locale Module
-> Eigene Pot->Po erstellen dazu braucht man einfach folgendes Format

msgid "string"
msgstr "zeichenkette"

AttachmentSize
translate_filter.tar.gz422 bytes

Add new comment