Contao-Camp 2024
Ergebnis 1 bis 15 von 15

Thema: Sprachwechsler MouseOver-Text

  1. #1
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard Sprachwechsler MouseOver-Text

    Hallo,

    habe im Sprachwechsler nun mehrere Sprachen hinzugefügt. Die Flaggen mit CSS eingebaut und verwende noch das Standard-Template nav_default:
    Bei MouseOver über die einzelnen Flaggen wird der jeweilige Seitentitel angezeigt, jedoch will ich ohne in der Seitenstruktur den Titel zu ändern, einen eigenen alternativen Text anzeigen lassen. Wie muss dann das nav_default-Template aussehen? Im Modul Sprachwechsler kann man ja keinen alternativen MouseOver-Text hinterlassen.

  2. #2
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Doch, Du kannst direkt im Frontend-Modul ein title-Attribut eintragen.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  3. #3
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard

    danke, aber ich finde im Modul keine Option, wo ich den title-Attribut nach belieben ändern kann und die Option "Eigene Sprachtexte" ersetzen auch nicht dieses title-Attribut.

    b1.JPG

  4. #4
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  5. #5
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard

    Danke, den kompletten HTML-Code ins das Ersatztextfeld eintragen funktioniert. Somit wäre dies eine Variante. Auf der Website, wo das ganze eingebaut werden muss, ist aber per CSS geregelt, dass für passive und aktive Seiten unterschiedliche Flaggen angezeigt werden, habe also für jede Sprache 2 Flaggen.
    Eigentlich wäre ein simples HTML-Modul die einfachste Variante, bloß damit kann man dann keine Fallback-Seite wie beim Sprachwechsler einstellen. Demnach wäre die Anpassung im Template doch die Variante, die in Frage käme. Doch wenn ich wie in https://www.contao-community.de/show...en-ver%E4ndern beschrieben "pageTitle" durch "label" ersetze, passiert gar nichts, es wird kein Hover-Text mehr angezeigt, obwohl der Ersatztext im Modul festgelegt wurde.
    Geändert von blog947 (16.05.2012 um 11:45 Uhr)

  6. #6
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hast Du in der "Systemwartung" den FileCache "system/tmp" bereinigt? Ansonsten kann es nämlich sein, dass die Änderungen am Template (noch) nicht greifen.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  7. #7
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Hast Du in der "Systemwartung" den FileCache "system/tmp" bereinigt? Ansonsten kann es nämlich sein, dass die Änderungen am Template (noch) nicht greifen.
    ... nach jeder Änderung im Backend, trotzdem kein MouseOver-Text, wenn ich wie im oben genannten Thread "pageTitle" durch "label" ersetze.

    das nav_default-Template sieht jetzt so aus:

    PHP-Code:
    <ul class="<?php echo $this->level?>">
    <?php foreach ($this->items as $item): ?>
    <?php 
    if ($item['isActive']): ?>
    <li class="active<?php if ($item['class']): ?> <?php echo $item['class']; ?><?php endif; ?>"><span class="active<?php if ($item['class']): ?> <?php echo $item['class']; ?><?php endif; ?>"></span><?php echo $item['subitems']; ?></li>
    <?php else: ?>
    <li<?php if ($item['class']): ?> class="<?php echo $item['class']; ?>"<?php endif; ?>><a href="<?php echo $item['href']; ?>" title="<?php echo $item['label'] ? $item['label'] : $item['title']; ?>"<?php if ($item['class']): ?> class="<?php echo $item['class']; ?>"<?php endif; ?><?php if ($item['accesskey'] != ''): ?> accesskey="<?php echo $item['accesskey']; ?>"<?php endif; ?><?php if ($item['tabindex']): ?> tabindex="<?php echo $item['tabindex']; ?>"<?php endif; ?><?php if ($item['nofollow']): ?> rel="nofollow"<?php endif; ?><?php echo $item['target']; ?>></a><?php echo $item['subitems']; ?></li>
    <?php endif; ?>
    <?php 
    endforeach; ?>
    </ul>


    PS: die Erweiterung changelanguage hab ich in der Version 2.0.3 im Einsatz

  8. #8
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Wie sieht denn das generierte HTML-Markup im Seitenquelltext aus? Ist dort das Label im title-Attribut vorhanden? Hast Du einen Link zur betreffenden Site?
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  9. #9
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard

    die Seite ist noch Offline, da noch nicht fertig.
    Mit geändertem Template bleibt das Attribut title leer (mit der aktuellsten Contao und Erweiterungsversion), siehe Bild.
    Angehängte Grafiken Angehängte Grafiken

  10. #10
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Okay, wenn das Attribut keinen Wert hat, dann ist klar, dass der Browser auch keinen Tooltip angezeigt.

    Du könntest Dir mal die Template-Variablen ausgeben lassen und schauen, welche Variablenwerte dem Template übergeben werden. Füge dazu am Beginn Deines Templates "nav_default.html5" die folgende Zeile ein:
    PHP-Code:
    <pre><?php $this->showTemplateVars(); ?></pre>
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  11. #11
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard

    Code:
                        [class] => lang-de first
                        [link] => deutsch
                        [subitems] => 
                        [href] => startseite.html
                        [pageTitle] => Startseite
                        [accesskey] => 
                        [tabindex] => 
                        [nofollow] => 
                        [target] => 
                        [language] => de
    demnach ist klar, anstatt "label" muss ich "link" nehmen und das funktioniert hervorragend. Die Sache mit den Templatevariablen muss ich mir unbedingt notieren, könnte für die Zukunft noch sehr nützlich sein.
    Vielen Dank für deine Hilfe

  12. #12
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.548
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hmm, und Du hast im Feld "Ersatztext" des Frontend-Moduls auch etwas eingetragen oder?
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  13. #13
    Contao-Nutzer
    Registriert seit
    07.08.2010.
    Beiträge
    44

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Hmm, und Du hast im Feld "Ersatztext" des Frontend-Moduls auch etwas eingetragen oder?
    ,

    richtig, denn nur da kann ich den Text für das title-Attribut eintragen, so wie ich es brauche. Also hab ich das Template angepasst und den Ersatztext, die Flaggen selbst liegen im Stylesheet. Alles zusammen ergibt: die Seite zeigt mir die Flaggen und bei MouseOver den alternativen Text.

  14. #14
    Contao-Fan Avatar von andrea$
    Registriert seit
    04.09.2011.
    Ort
    Berlin
    Beiträge
    706

    Standard

    Zitat Zitat von blog947 Beitrag anzeigen
    ,

    richtig, denn nur da kann ich den Text für das title-Attribut eintragen, so wie ich es brauche. Also hab ich das Template angepasst und den Ersatztext, die Flaggen selbst liegen im Stylesheet. Alles zusammen ergibt: die Seite zeigt mir die Flaggen und bei MouseOver den alternativen Text.
    Genau damit bin ich gerade auch beschäftigt. Die Extension hat sich offensichtlich seitdem verändert. Den Begriff "Ersatztext" gibt es so ja nicht mehr, da es die Flaggen nicht mehr gibt, kann man nur noch eigene Sprachtexte einsetzen.
    Auch im Template mod_changelanguage.tpl gibt es "pageTitle" nicht mehr. Ist es jetzt überhaupt noch möglich ein "title" für die Grafiken zu setzen?
    ACHTUNG - User mit Halbwissen

  15. #15
    Contao-Nutzer
    Registriert seit
    11.08.2015.
    Beiträge
    36

    Standard

    Sechseinhalb Jahre später ...

    Ich habe nach einer Möglichkeit gesucht, in der Erweiterung changelanguage meine eigenen Sprachtexte im Title darstellen zu lassen. Bin in der Forensuche nicht so wirklich fündig geworden, habe es aber mit Hilfe dieses Beitrags geschafft.

    1. nav_default in den Templates anlegen und in nav_changelanguage umbennen (oder sonstwie anders halt)
    2. Im Modul changelanguage das neu angelegte Template anstelle von nav_default auswählen
    3. Code in diesem Template wie folgt ändern:


    Code:
    title="<?= $item['pageTitle'] ?: $item['title'] ?>"
    ändern in

    Code:
    title="<?= $item['link'] ?>"

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
  •