Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

Gelöst:Übersetzung der CKK-Dropdown-Textbox Werte mit Locale und Content Translation - geht das?

Eingetragen von longvalley (33)
am 15.07.2008 - 09:22 Uhr in
  • Module
  • Drupal 6.x

Hallo Drupaler,

ich habe jetzt begonnen einen Uni-Instituts-Seite auf Drupal6 zu portieren. Dabei soll auch auf Mehrsprachigkeit des Systems (Englisch, Deutsch, Französisch...) Wert gelegt werden.

Zur Übersetzung des Inhalts nutze ich das Modul ContentTranslation, was mir ja für jeden Inhaltstyp - sofern in den Workflow-Settings freigegeben - eine Übersetung meines Content-Types ermöglicht.

Für die Übersetzung der Oberfläche, d.h. der Label meines Content-Typen, habe ich das Module Localization Client gefunden (Web 2.0 Ajax-Funktionalität im Gegensatz zu Web 1.0 Klick-warte Technik)...

Die Übersetzung meiner Content-Type-Inhalt funktioniert soweit auch ganz gut. Einfach auf Translate-Tab gehen, translate wählen, die deutschen Einträge durch englische ersetzen, als Sprache Englisch einstellen und dann wird eine neue Node mit dem entsprechenden Inhalt erzeugt.

Mein Problem ist nun wie folgt:
In meinen Content-Type nutze ich vermehrt Dropdown-Boxen, deren Inhalte ich ja mit key-value Paaren bei der Erstellung des CKK-Fields im Content Type direkt angebe.... Diese Werte sind jetzt default in Englisch angegegben.

Wie kriege ich es jetzt hin diese Werte für meinen deutschen Eintrag in Deutsch zu übersetzen?

Bei der oben beschriebenen Übersetzung ist mir ja nur die MÖglichkeit gegeben einen Eintrag aus der Dropdown-Box auszuwählen... Diese sind von der Sprache unabhängig - da beim ContentType hinterlegt. Und ContentTypes werden ja nicht sprachabhängig angelegt.

Der langen Rede kurzer Sinn: Wie kann ich Werte von CKK-Dropdown-Boxen übersetzen?

Eine quick and dirty Lösung wäre es sicherlich auch die Englischen Werte mit in die key-value-pairs der DropDown mit aufzunehmen. Doch das kann ja nicht allen ernstes die Lösung sein, oder?

Hoffe auf Vorschläge von eurer Seite...

Vielen Dank,
Gruß
Marcel

‹ Module werden nicht mehr angezeigt CVS für 5.7 ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Lösung ?

Eingetragen von longvalley (33)
am 16.07.2008 - 08:44 Uhr

Hey,

ich schon wieder. Irgendwie muss ich bei allen Posts immer noch einen Nachtrag verfassen :)

Die Dropdown dient in dem einen Fall bisher nur zur Kategoriesierung der Mitarbeiter, so dass ich diese dann in einem View in Gruppen angezeigt bekomme. Solche Kategorisierungen sind doch auch mit dem Taxonomy-Modul möglich, oder? Habe bisher noch nicht mit diesem Model gearbeitet, da ich mich auch erst seit ca. 2 Monaten mit Drupal6 beschäftigte....

Diese Taxonomy-Vokabeln lassen sich doch dann auch mit dem in18- Modul übersetzen und ich hätte das Problem gelöst :)

Werde ich gleich mal ausprobiere und mein Erfahrung hier posten...

Wäre trotzdem nett, wenn vielleicht noch jemand seinen Senf zu obigem Sachverhalt abgeben könnte..

Danke,
Gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

fuer die Dropdown Values die t() Funktion verwenden

Eingetragen von quiptime (4972)
am 16.07.2008 - 11:26 Uhr

Wenn man mittels CCK in Nodetypes Dropdown's oder Select's erstellt mach man dies im einfachsten Falle mit der Definition einer Werteliste.

Folgende Idee:

Man kann die Dropdown's oder Select's aber auch mittels PHP Code erstellen - also NICHT mit einer Werteliste.

Innerhalb des PHP Code kann man fuer die Values die t() Funktion von Drupal verwenden. Damit sollten die Values mit Drupals Lokalisierung uebersetzbar sein.
Bevor dies Values eines CCK Feldes uebersetzbar sind muss ein Node mit einem solchen PHP generierten Dropdown oder Select aufgerufen werden.

Gib bitte Feedback ob es so funktioniert.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Funktionert, aber...

Eingetragen von longvalley (33)
am 16.07.2008 - 17:31 Uhr

Hallo quiptime,

erstmal vielen Dank für deinen Tipp :)

Habe das jetzt so probiert wie du vorgeschlagen hast. Folgenden Code habe ich verwendet um die DropDown zu füllen:

$test = array(
'prof' => t('professor'),
'obering' => t('chief engineer'),
'wissM' => t('academic staff'),
'lehrb' => t('assistant professor'),
'techM' => t('engineering  staff'),
'verwSek' =>  t('administration and office')
);

return $test;

Danach konnte ich auch über das TranslateInterface die deutschen Übersetzungen für die Werte der DropDown eingeben... Und siehe da: Wenn ich nun den Wert auf meiner Mitarbeiterseite anzeigen lassen(PlainText), dann ändert er sich von Deutsch nach Englisch, nach Deutsch.... Soweit schonmal super, aber...!

Diesen Wert will ich ja eigentlich gar nicht in der Mitarbeiterseite anzeigen, sondern verwende ihn zur Filterung meiner Mitarbeiter in Gruppen (Professor, Wissenschaftlicher Mitarbeiter etc..)

Es existiert für diese Mitarbeiter nähmlich eine Übersichtsseite, wo alle Mitarbeiter in Gruppen aufgelistet werden. Dazu habe ich mir einen View gebastelt, der prinzipiell erstmal alle Mitarbeiter anzeigt...

Da ich diese Übersichtseite aufgrund der Formatierung mit CSS nicht über einen View realisieren kann, habe ich einfach über folgenden Code den View mehrfach auf diese Seite gepackt, wobei ich jeweils einen Filter auf die Gruppe setze, die ich an der gewünschten Stelle angezeigt bekommen will...

Hier mal der Code - den habe ich aus einem Forum kopiert...

<?php
    
//hole mir den View       
$view = views_get_view('staff_all');
//setze display
$display_id = 'default';
$view->set_display($display_id);
//setze Filter
$id = $view->add_item($display_id, 'filter', 'node_data_field_staff_group', 'field_staff_group_value');
$item = $view->get_item($display_id, 'filter', $id);
//hier setze ich den Filter auf den key der Gruppe
$item['value'] = array('prof');
$view->set_item($display_id, 'filter', $item['id'], $item);
$view->is_cacheable = FALSE;
//Ausgabe
print $view->execute_display('default', $args);
?>

Das funktioniert auch soweit... Er zeigt mir auch immer als Überschrift des Views den jeweiligen Filter an.. D.h. wähle ich prof als Filterkriterium, erscheint über der Liste der Mitarbeiter mit Gruppe prof der englische Titel dieser Gruppe (hier professor) usw...

Eine Übersetzung der Werte wie auf meiner Mitarbeiterseite findet allerding nicht statt...

Hast du zufällig noch ne Idee woran das wiederrum liegen könnte?

Danke,
gruß
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Was steckt in array('prof') ?

Eingetragen von quiptime (4972)
am 16.07.2008 - 17:43 Uhr

Dein Code:

$item['value'] = array('prof');

Was steckt in array('prof') ?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

Da geht noch was.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das Problem ist gelöst ....

Eingetragen von longvalley (33)
am 16.07.2008 - 21:40 Uhr

Das Problem hat sich gerade gelöst...

Scheinbar handelte es sich einfach mal wieder um ein Cache-Problem. Diesen mehrfach gelöscht und schon klappt auch die Übersetung :)

Vielen, vielen Dank für den Tipp mit der t-Funktion. Wäre ich mit meinem bisherigen Wissen nicht drauf gekommen...

Beste Grüße
Marcel

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Bitte um Einschätzung: Upgrade von Drupal 7 auf 9
  • SQL-Injection? User hat sich Zugriff aufs Admin-Konto geholt und Änderungen vorgenommen.
  • [gelöst]Webform Meldung nach Submission
  • Migration über feeds von D6 auf D8
  • Anbindung externe Datenbank MongoDB
  • Webform - einzelne Komponenten übersetzen
  • Theme Classy sei installiert, ist aber nicht bei Themes
  • Webhoster Installation von D8 zu D9 Upgraden - Fragen...
  • Drupal Freelancer*in / Entwickler*in in Berlin gesucht
  • [gelöst]Nach Update auf 3.1.21: Feld "Allowed User" funktioniert nicht mehr
  • Wie Massenupdate durchführen, wenn Bulk Operations abbricht?
  • [gelöst]Texteditor in Drupal 9.x
Weiter

Neue Kommentare

  • mazze schrieb Ich nutze
    vor 8 Minuten 54 Sekunden
  • Vielen Dank für deine
    vor 13 Minuten 1 Sekunde
  • Backdrop CMS
    vor 15 Stunden 22 Minuten
  • Zitat: ob ein reibungsloses
    vor 16 Stunden 32 Minuten
  • Kann die Ursache eventuell an
    vor 22 Stunden 24 Minuten
  • Unter General
    vor 22 Stunden 36 Minuten
  • Hallo Andreas, Ich habe Dir
    vor 1 Tag 16 Stunden
  • montviso schrieb Aber egal,
    vor 1 Tag 17 Stunden
  • Beispiel
    vor 1 Tag 18 Stunden
  • Oh Mann.In
    vor 1 Tag 18 Stunden

Statistik

Beiträge im Forum: 248360
Registrierte User: 19749

Neue User:

  • Aman_Musani
  • Dustinjex
  • Rickywap

» Alle User anzeigen

User nach Punkten sortiert:
wla9283
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 1 Benutzer und 12 Gäste online.

Benutzer online

  • t2k

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association