rf
I'm new here

Sprachunabhängige Ausgabe in einer Absatzvorlage

Jump to solution

Hallo,

zuerst, es tut mir leid wenn diese Frage schon gestellt wurde aber ich habe nichts in der Suche gefunden.

Ich habe im HTML Kanal einer Absatzvorlage einen contentSelect auf spezifische Felder eines Schemas, welches Mehrsprachig ist.

Nun würde ich gerne diese Daten Sprachunabhägig ausgeben.

Im Schema wurden natürlich Felder angelegt, die field_DE, field_IT etc. heißen.

Diese kann ich mir auch ohne Probleme ausgeben lassen, aber nur nach einer Abfrage der Sprache der Seite.

Meine Frage lautet demnach :

Gibt es eine Möglichkeit mittels $CMS_VALUE(item.field)$ automatisch die richtige Sprachversion ausgeben zu lassen ohne vorher irgendwo die ganzen Sprachen zu definieren ?

Andere Lösungsvorschläge sind auch gerne gesehen Smiley Happy

Danke im Vorraus,

Rainer

0 Kudos
1 Solution

Accepted Solutions

Hallo Rainer,

wenn ich Deine Beschreibung richtig verstehe, sollte folgendes funktionieren:

$CMS_FOR(itemPM,pm_nach_gruppe)$

     $CMS_VALUE(itemPM.name)$

$CMS_END_FOR$

Es wird dann immer das Feld der aktuell generierten Sprache genommen.

Viele Grüße

Jan Tilo

View solution in original post

0 Kudos
5 Replies
kohlbrecher
Crownpeak employee

Hallo Rainer,

ich bin mir nicht ganz sicher, ob ich deine Frage richtig verstehe aber hilft dir nicht "useLanguages"?

Siehe hier bzw hier.

Ansonsten müsstest du dein Ziel vielleicht nochmal etwas genauer beschreiben.

Grüße

Jan

0 Kudos

Hallo Jan,

erstmal Danke für die Antwort.

Nein ich denke nicht dass mir das weiter hilft, ich versuche es nocheinmal besser zu erklären :

Ich habe ein ContentSelect im Header der HTML Ausgabe einer Absatzvorlage, der eine Liste von Einträgen liefert, wobei einige Felder mehrsprachig vorkommen :

<CMS_FUNCTION name="contentSelect" resultname="pm_nach_gruppe">

   ...

</CMS_FUNCTION>

Diese Liste hat nun z.b. folgendes Ergebniss :

[name_de, name_IT, name_FR]

Dann baue ich später Aufgrund dieser Liste das HTML zusammen :

$CMS_FOR(itemPM,pm_nach_gruppe)$

   ...

   <p>$CMS_VALUE(itemPM.name_DE)$</p>

    ...

$CMS_END_FOR$

Nun würde ich gerne einen Language Switch bei der Ausgabe von itemPM.name hier vermeiden um spätere weitere Sprachen besser einpflegbar zu machen.

Also so etwas wie $CMS_VALUE(locale(itemPM.name)$ ...

Existiert so etwas oder denke ich hier grundlegend falsch und sollte überhaupt meinen Aufbau mal überdenken ? Smiley Happy

Danke im vorraus,

Rainer

0 Kudos

Hallo Rainer,

wenn ich Deine Beschreibung richtig verstehe, sollte folgendes funktionieren:

$CMS_FOR(itemPM,pm_nach_gruppe)$

     $CMS_VALUE(itemPM.name)$

$CMS_END_FOR$

Es wird dann immer das Feld der aktuell generierten Sprache genommen.

Viele Grüße

Jan Tilo

0 Kudos

Ich verstehe da immer noch etwas nicht:

Ich habe ein ContentSelect im Header der HTML Ausgabe einer Absatzvorlage, der eine Liste von Einträgen liefert, wobei einige Felder mehrsprachig vorkommen :

<CMS_FUNCTION name="contentSelect" resultname="pm_nach_gruppe">

   ...

</CMS_FUNCTION>

Diese Liste hat nun z.b. folgendes Ergebniss :

[name_de, name_IT, name_FR]

Wieso sieht die Liste so wie von dir angegeben aus? Habt ihr die Sprachabhängigkeit selber abgebildet? Dann greifen die Standard-Mechanismen von FirstSpirit natürlich nicht. Um Unterstützung zu bekommen müsstest du dann dein Schema kurz erläutern.

Ansonsten sollte die Antwort von Jan Tilo passen...

Peter
0 Kudos

Hallo Rainer,

benötigst du noch weitere Hilfe oder konnte dir Jan Tilos Antwort weiterhelfen? In diesem Fall wäre es nett, wenn du seine "richtige Antwort" entsprechend markierst.

Solltest du zwischenzeitlich eine eigene Lösung gefunden haben, wäre es nett, wenn du diese hier bereitstellst.

Viele Grüße

Michaela