Contao-Camp 2024
Ergebnis 1 bis 2 von 2

Thema: Eigene Links in Navigation in mehrsprachigem Setup

  1. #1
    Contao-Nutzer Avatar von verkruemelt
    Registriert seit
    07.03.2018.
    Beiträge
    7

    Standard Eigene Links in Navigation in mehrsprachigem Setup

    Hallo zusammen,

    ich habe contao 4.4 per composer auf einem Ubuntu Webserver installiert. Es soll als Grundlage für ein Firmen-Intranet dienen.
    Das Setup soll dabei mehrsprachig sein (mit Sprachkürzel in der URL) und in der Navigation sollen zusätzlich eigene Links (zu firmeninternen Webseiten) hinterlegt werden. Dabei sollen den Usern aber nur relevante Links, anhand ihrer Active-Directory-Gruppen, angezeigt werden. Dazu habe ich im Apache die Base-Authentication mit LDAP eingerichtet und ein eigenes Template geschrieben, um die contao-Navigation entsprechend zu erweitern. Dies funktioniert soweit alles - mit einer Sprache.
    Mit Hilfe der Erweiterung terminal42/contao-changelanguage habe ich die Seiten verknüpft, so dass beim Umschalten der Sprache, die entsprechende Seite in der gewählten Sprache angezeigt wird.
    Aber aktuell bekomme ich in der Navigation alle sichtbaren Elemente aus allen Sprachen der Seitenstruktur angezeigt. Ich könnte die Seiten fest im Template einprogrammieren, aber das möchte ich eher vermeiden.

    Aktuell frage ich die Datenbank mit folgendem Query ab:
    PHP-Code:
    $this->Database->prepare("SELECT `title`, `alias` FROM `tl_page` WHERE `published` = ? AND `sitemap` = ? AND `hide` <> ? AND `language` = ? ORDER BY sorting;")->execute(1"map_default"1""$GLOBALS['TL_LANGUAGE']); 
    Aber in der Spalte 'language' steht nur bei den root-Seiten das Sprachkürzel. Leider finde ich auch keine Beziehung zwischen den einzelnen Seiten und der jeweiligen root-Seite.
    Man könnte das Kürzel bei den Unterseiten eintragen, aber wenn sich mal etwas an der Seitenstruktur ändert... denkt wieder niemand daran, dass der Wert per Hand eingetragen werden muss, damit die Seite dann auch angezeigt wird.

    Oder gibt es einen eleganteren Weg eigene Links in die Navigation einzufügen - basierend auf Active-Directory-Gruppen?

    Vielen Dank vorab.

  2. #2
    Contao-Nutzer Avatar von verkruemelt
    Registriert seit
    07.03.2018.
    Beiträge
    7

    Standard

    Ich habe es nun so gelöst, dass ich das Sprachkürzel mit in der Tabelle
    Code:
    tl_page
    eintrage, dann kann ich nach der jeweiligen Sprache in der SQL-Abfrage filtern.
    An der groben Struktur wird sich nicht allzu häufig etwas ändern...

    Ich bin aber trotzdem für Denkanstöße offen, wie man das eleganter lösen könnte.
    Whatever People Say I Am, That's What I'm Not!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •