1. Dashboard
  2. Articles
  3. Forum
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • More Options
  1. webEdition Forum
  2. Forum
  3. Deutschsprachiges Support Forum
  4. webEdition Templates erstellen (we:tags)

Verlinkung mit verschiedenen Sprachen

  • frog0815
  • October 25, 2024 at 11:28 AM
1st Official Post
  • frog0815
    Beginner
    Reactions Received
    1
    Posts
    11
    • October 25, 2024 at 11:28 AM
    • #1

    Hallo,

    ich habe eine Seite mit vielen Sprachen. In einer Vorlage möchte ich einen fixen Link eintragen der auf ein bestimmtes webEdition Dokument verlinkt. Dieser Link soll aber je nach Sprache des Dokumentes auf das Dokument der jeweiligen Sprache verlinken.

    Beispiel im Header habe ich auf allen deutschen Dokumenten einen Link auf /de/testseite.php (ID=1), auf der englischen Seite soll der Link aber auf /en/testpage.php (ID=2) gehen. Die Dokumente /de/testseite.php und /en/testseite.php sind gegenseitig in den webEdition Dokumenteneinstellungen unter Eigenschaften -> Sprache verknüpft. Alle Dokumente verwenden für den Header dieselbe header Vorlage.

    Ich suche eine einfache Lösung wie etwa: <we:a edit="document" id="1" language="$sprache"></we:a>

    $sprache übergibt das Sprachenkürzel an den Link oder es wird automatisch die Sprache des aufgerufenen Dokumentes genommen und entsprechend der Spracheneinstellungen wird dann automatisch das korrekte Dokument über die Dokument ID (hier 1) herausgesucht und für den Link verwendet.

    Ich weiß man kann das mit

    <we:ifPageLanguage match="de_DE">
       <we:a edit="document" id="1"></we:a>
    </we:ifPageLanguage>

    <we:ifPageLanguage match="en_GB">
       <we:a edit="document" id="2"></we:a>
    </we:ifPageLanguage>

    machen, aber bei vielen Links und vielen Sprachen ist das einfach zu viel Arbeit. Da die Dokumente untereinander verknüpft sind wäre es super wenn es da eine WE Lösung gäbe.

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • October 25, 2024 at 12:15 PM
    • Official Post
    • #2

    Moin Moin,
    wenn die Dokumente über die Sprachen hinweg verknüpft sind, kannst du einen Listview nutzen um ein Sprachmenü zu erstellen.


    <we:listview type="languagelink" order="de_DE,en_GB" hidedirindex="true" showself="true">

      <we:repeat>

        <we:field name="we_path" />

        <we:field name="WE_TARGETLANGUAGE" />

      </we:repeat>

    </we:listview>


    Wir schreiben uns die beiden Felder in der Regel in ein Array und bauen das Menü dann mit PHP um ggf. Sonderfälle etc. besser behandeln zu können.

    Hier ein Beispiel aus dem echten Leben: https://www.primebremen.de/

    https://www.wg-werbeagentur.de

    • Next Official Post
  • frog0815
    Beginner
    Reactions Received
    1
    Posts
    11
    • October 25, 2024 at 1:52 PM
    • #3

    Hi,

    das klappt leider nicht mit der listview. Ich möchte die listview ja nicht von dem aufgerufenen/aktuellen Dokument sondern von dem verlinkten Dokument. Zusätzlich soll auch nur der Link zu der aktuellen Sprache angezeigt werden.

    Das würde nur funktionieren wenn man bei der listview eine ID des Dokumentes angeben könnte.

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • October 25, 2024 at 4:03 PM
    • Official Post
    • #4

    Okay, dann hab ich nicht richtig verstanden, was du möchtest, hast du ein Beispiel dafür?

    https://www.wg-werbeagentur.de

    • Previous Official Post
    • Next Official Post
  • frog0815
    Beginner
    Reactions Received
    1
    Posts
    11
    • October 25, 2024 at 5:52 PM
    • #5

    Beispiel hatte ich ja oben geschrieben.

    Im Header soll ein Link eingefügt werden zu /de/testseite.php auf allen deutschen Seiten z.b. auf der /de/index.php

    Zu /en/testpage.php soll der gleiche Link in der Headervorlage auf allen englischen Seiten verlinken.

    /de/testseite.php und /en/testpage.php sind über die Sprachen verknüpft.

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • October 25, 2024 at 6:00 PM
    • Official Post
    • #6

    Kannst du dann dafür nicht auch eine Navigation nutzen oder ein Config-Array mit den IDs? Oder wie dynamisch muss das ganze sein?

    https://www.wg-werbeagentur.de

    • Previous Official Post
    • Next Official Post
  • frog0815
    Beginner
    Reactions Received
    1
    Posts
    11
    • October 27, 2024 at 5:15 PM
    • #7

    Ja wäre möglich da was selbst zu programmieren. Dann müssen die Daten ja leider zusätzlich nochmal eingepflegt werden. Die Informationen sind ja bereits in den Sprachzuweisungen in den WE Dokumenten vorhanden, deshalb wäre es super wenn es eine Lösung über webEdition gäbe.

  • frog0815
    Beginner
    Reactions Received
    1
    Posts
    11
    • November 5, 2024 at 8:40 AM
    • #8

    Also gibt es keine WE Lösung?

    Dann würde ich eine Erweiterung für den we:a Tag vorschlagen:

    Code
    <we:a edit="document" id="ID" language="SELF|de_DE|en_GB..."></we:a>

    NEU der "language" Parameter. Anhand der ID und der angegeben language wird das jeweilige Dokument als Link aus der Sprachenliste des angegebenen Dokuments ausgegeben. Bei "SELF" wird die Sprache des aufgerufenen Dokumentes verwendet oder es wird eine Sprache übergeben.

  • WBTMagnum
    Student
    Reactions Received
    14
    Posts
    163
    • November 5, 2024 at 11:35 AM
    • #9

    Ich habe jetzt auch nochmal mit <we:listview> und <we:listview type="languagelink"> herumgetüftelt, bin damit aber auf keinen grünen Zweig gekommen.

    Der Vorschlag mit dem language Attribut bei <we:a> gefällt mir persönlich nicht so gut. Wenn hier eine ID angegeben ist, dann erwarte ich mir ja auch, dass das Dokument bzw. Objekt ausgegeben wir und nicht ein anderes.

    Wenn, würde ich vorschlagen <we:listview type="languagelink"> um ein optionales id bzw. docid Attribut zu erweitern. Damit könnte man die Sprachvarianten eines beliebigen Dokument (bzw. Objekts) ausgeben lassen.

    Just my 2 cents,
    Sascha

  • frog0815
    Beginner
    Reactions Received
    1
    Posts
    11
    • November 18, 2024 at 12:02 PM
    • #10

    Super wann ist das in webEdition enthalten?

  • Finn
    Administrator
    Reactions Received
    12
    Posts
    295
    • November 18, 2024 at 12:25 PM
    • Official Post
    • #11
    Quote from WBTMagnum

    Ich habe jetzt auch nochmal mit <we:listview> und <we:listview type="languagelink"> herumgetüftelt, bin damit aber auf keinen grünen Zweig gekommen.

    Der Vorschlag mit dem language Attribut bei <we:a> gefällt mir persönlich nicht so gut. Wenn hier eine ID angegeben ist, dann erwarte ich mir ja auch, dass das Dokument bzw. Objekt ausgegeben wir und nicht ein anderes.

    Wenn, würde ich vorschlagen <we:listview type="languagelink"> um ein optionales id bzw. docid Attribut zu erweitern. Damit könnte man die Sprachvarianten eines beliebigen Dokument (bzw. Objekts) ausgeben lassen.

    Just my 2 cents,
    Sascha

    Halte ich auch für eine gute Idee, dafür unter https://qa.webedition.org einen Feature Request machen und auf diesen Thread verweisen.

    https://www.wg-werbeagentur.de

    • Previous Official Post

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login

Donations

200.00 EUR

Donate now

Tags

  • language
  • link
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™