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

Mehrsprachige Panels / Blöcke

Eingetragen von thomy79 (72)
am 19.08.2008 - 11:36 Uhr in
  • Module
  • Drupal 5.x oder neuer

Hi. Ich nutze i18n, um eine mehrsprachige Site zu erstellen. Wie kann ich Blocküberschriften bzw. Blöcke mehrsprachig machen? Als Startseite habe ich ein 3-spaltiges Panel angelegt, welches 6 Blöcke anzeigt. Diese haben deutsche Überschriften. Wie kann ich diese nun länderspezifisch anpassen?

Da das Thema "brennt", wäre ich Euch für eine schnelle Rückantwort sehr dankbar!

‹ Advanced Forum - Änderungen in der Struktur pathauto und Kategorien ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

mehrsprachige Blocktitel

Eingetragen von stBorchert (6003)
am 19.08.2008 - 12:02 Uhr

Moin!

thomy79 schrieb

Wie kann ich Blocküberschriften bzw. Blöcke mehrsprachig machen?

Probier mal Folgendes: lege in dem Verzeichnis Deines Themes eine Template-Datei für Blöcke an (block.tpl.php)

<div id="block-<?php print $block->module .'-'. $block->delta; ?>" class="block block-<?php print $block->module ?>">

<?php if ($block->subject): ?>
  <h2><?php print $block->subject ?></h2>
<?php endif;?>

  <div class="content"><?php print $block->content ?></div>
</div>

Um den Titel jetzt übersetzen zu können, muss der Titel in die Funktion t() eingebettet werden:

<div id="block-<?php print $block->module .'-'. $block->delta; ?>" class="block block-<?php print $block->module ?>">

<?php if ($block->subject): ?>
  <h2><?php print t($block->subject) ?></h2>
<?php endif;?>

  <div class="content"><?php print $block->content ?></div>
</div>

Jetzt kannst Du den Titel übersetzen. Eigentlich müsste dann auch der richtige Titel für die entsprechende Sprache angezeigt werden.

Wenn das nicht funktioniert, bleibt Dir immer noch die Möglichkeit, den Block für jede Sprache inzeln zu erstellen und den Titel dementsprechend anzupassen. Dann setzt Du noch, wo der Block erscheinen soll ("/de/*" oder "/en/*") und fertig.

hth,

 Stefan

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi Stefan,

Eingetragen von thomy79 (72)
am 19.08.2008 - 14:44 Uhr

ich habe mal die Fkt. t() eingefügt. Leider kann ich noch keinen Effekt erkennen. Wo sollen die unterschiedlichen Block-Überschriften gepflegt werden? Unter Blöcke -> Block_XY -> Konfigurieren?
Danke erstmal und Gruß
Thomas

"Repetitio est mater studiorum."

  • Anmelden oder Registrieren um Kommentare zu schreiben

locale

Eingetragen von stBorchert (6003)
am 19.08.2008 - 14:50 Uhr

Sofern Du locale aktiviert hast, unter [admin/settings/locale/string/search]. Sonst schlägt die zweite Option zu :-)

 Stefan

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

sorry, dass ich nochmal nachhaken muss,

Eingetragen von thomy79 (72)
am 19.08.2008 - 15:27 Uhr

habe das mit dem ersten von sechs Blocks versucht, mit dem Ergebnis, das er nach der Übersetzung nur noch auf der Standardsprache (D) angezeigt wird, bei den drei restlichen Sprachen fehlt er. Hat jemand eine Ahnung woran das liegt?!
Grundsätzliche Verständnisfrage: Könnte man grundsätzlich alles über admin/settings/locale/string/search übersetzen und sich so die Übersetzung zB der Menüs sparen?
Sorry, aber ich bin absoluter newbie...

"Repetitio est mater studiorum."

  • Anmelden oder Registrieren um Kommentare zu schreiben

locale

Eingetragen von stBorchert (6003)
am 19.08.2008 - 15:41 Uhr
thomy79 schrieb

Grundsätzliche Verständnisfrage: Könnte man grundsätzlich alles über admin/settings/locale/string/search übersetzen und sich so die Übersetzung zB der Menüs sparen?

Leider nicht. Nur Texte, die in die Funktion t() eingebettet sind, sind mittels locale übersetzbar.

 Stefan

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Der Block erscheint nicht wieder,

Eingetragen von thomy79 (72)
am 20.08.2008 - 07:48 Uhr

obwohl ich die Übersetzungen gelöscht habe und die block.tpl.php wieder in den Ursprungszustand geändert habe. Hat hier jemand eine Idee? Wie sollte man vorgehen, wenn man ein Panel mit mehreren Blocks hat und dieses übersetzen will? Best-Practice?

Grüße
Thomas

"Repetitio est mater studiorum."

  • Anmelden oder Registrieren um Kommentare zu schreiben

Problem erkannt...

Eingetragen von thomy79 (72)
am 20.08.2008 - 09:58 Uhr

Zunächst einmal vielen Dank Stefan für Deine schnelle Hilfe! Das funktioniert genau so, wie Du es beschrieben hast.

Mein Problem war folgendes: Ich habe einen Content-Type "News". Aus dem habe ich einen View mit Blockansicht gebastelt. Diesen Block habe ich dann in mein Panel eingebaut. Dann hatte ich die von Dir o.g. t()-Funktion in die block.tpl.php eingebaut. Nun erschien der Block nur noch in der Standardsprache (deutsch). Ursache: Die Inhalte des C.-Types "News" wurden von mir noch noch nicht übersetzt. Somit wird gar nichts angezeigt, auch keine in der Lokalisierung übersetzte Überschrift.

Da hätte ich auch früher draufkommen können, eben Wohl ein typischer Newbie-Fehler... Trotzdem macht Drupal Spaß! Unglaublich, was man damit allein mit HTML- und CSS-Kenntnissen machen kann...Drupal rockt gewaltig!

"Repetitio est mater studiorum."

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Hilfsprogramme
  • [gelöst] Sichtbarkeit von Seiten über Rollen steuern
  • [gelöst] Menüpunkte deaktivieren sich automatisch
  • Kartenansicht, Position des Users und Nodes anzeigen
  • Theme suggestion wird nicht verwendet
  • [gelöst]Pflichtfeld vom User deaktivieren lassen
  • Konto löschen, wie? (Drupalorg/Drupalcenter)
  • Layout-Builder hängt
  • Drupal 8/9 SEO-Beratung/Coaching
  • Verschachtelte UND / ODER Abfrage mit hook_views_query_alter
  • Hilfe zu Views und Filter?
  • Views für 2 Kategorien
Weiter

Neue Kommentare

  • Zitat: Ich möchte ja die
    vor 7 Stunden 57 Minuten
  • Gelöst
    vor 8 Stunden 19 Minuten
  • Das hilft mir leider nicht.
    vor 8 Stunden 24 Minuten
  • Wenn ich es richtig verstehe,
    vor 9 Stunden 59 Minuten
  • Liebe Regina, herzlichen Dank
    vor 21 Stunden 9 Minuten
  • Nimm content access, aber Du
    vor 1 Tag 4 Stunden
  • Verlege diese Funktion in ein
    vor 1 Tag 5 Stunden
  • Nodeaccess geht ja gerade
    vor 1 Tag 6 Stunden
  • sollte mit domainaccess gehen
    vor 1 Tag 8 Stunden
  • Danke das ist die Lösung
    vor 2 Tagen 2 Stunden

Statistik

Beiträge im Forum: 246109
Registrierte User: 18885

Neue User:

  • Stine_64
  • uniquename
  • xapizm

» Alle User anzeigen

User nach Punkten sortiert:
wla9018
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3917
ronald3832
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 1 Benutzer und 5 Gäste online.

Benutzer online

  • Franz Kruse

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