Ergebnis 1 bis 11 von 11

Thema: "Changelanguage" nicht als Modul sondern direkt einbinden

  1. #1
    Contao-Nutzer Avatar von Rµdy
    Registriert seit
    20.07.2009.
    Beiträge
    11

    Standard [gelöst] "Changelanguage" nicht als Modul sondern direkt einbinden

    Hallo miteinander,

    ich habe da eine Frage zur Erweiterung "Changelanguage". Eins vorweg, ich bin absolut kein Profi und löse meine Probleme mit TYPOlight bzw. HTML/PHP/CSS Code mit mehr Glück als Verstand.

    Jetzt zur meiner Frage. Ich habe mir die Vorlage von Leo "Clean Blue" zugelegt und betreibe eine kleine zweisprachige Seite (de und en). Bis jetzt habe ich den Sprachwechsel mit zwei Domains, die jeweils einer Sprache fest zugewiesen waren, und einem selbst zusammengeschusterten php Script gelöst. Allerdings war ich von dieser Lösung nicht ganz überzeugt und habe dann die Erweiterung Changelanguage gefunden, so dass meine Domains unabhängig von der Sprache sein können. Allerdings kann ich das Changelanguage Modul nicht so schön in das Clean Blue Template eingliedern wie ich das mit der vorherigen Lösung machen konnte. Diese habe ich nämlich mit {{file::lang_header_links.php}} im Modul "Layout - Top menu" <div id="topmenu"> eingbunden. Das sah dann wie auf dem Bild im Anhang aus. Der grüne Pfeil zeigt, wo ich Changelanguage haben möchte. Ein Changelanguage Modul kann ich ja nur im Backend im Menü Layout einfügen und in "Kopfzeile", Fusszeilke, etc. einfügen. Hier der HTML Code des Moduls "Layout - Top menu":

    HTML-Code:
    <!-- indexer::stop -->
    <div id="topmenu">
    <form action="search.html" method="get">
    		<li>*** HIER CHANGELANGUAGE ***</li>
    		<li><img class="headerButton" src="/tl_files/clean_blue/icons/button_space.gif" height="16" border="0" /></li>
    		<li><a href="/contact.html" alt="" title="">Kontakt</a></li>
    		<li class="search"><div><input type="text" name="keywords" class="text" value="" /> <input type="image" src="tl_files/clean_blue/images/search.png" alt="Search" class="submit" /></div></li></form>
    </div>
    <!-- indexer::continue -->
    Wenn ich versuche denCode der Datei /system/modules/changelanguage/ModuleChangeLanguage.php mit {{file::ModuleChangeLanguage.php}} direkt in das Modul einzubinden wird nichts ausgegeben. Wie gesagt ich kenn mich damit einfach nicht allzu sehr aus.

    Danke für eure Hilfe. Ich hoffe ich habe mich einigermaßen verständlich ausgedrückt.
    Rµdy
    Angehängte Grafiken Angehängte Grafiken
    Geändert von Rµdy (25.07.2009 um 11:40 Uhr)

  2. #2
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das wird nicht funktionieren, du kannst die Datei nicht einfach einbinden (es ist ja ein Modul). Was spricht dagegen das Modul im Seitenlayout an einer geeigneten Position einzubinden (Header...) und dann per CSS zu positionieren?
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  3. #3
    Contao-Nutzer Avatar von Rµdy
    Registriert seit
    20.07.2009.
    Beiträge
    11

    Standard

    Danke für die Antwort. Bevor ich den beitrag geschrieben habe, hatte ich eigtl schon versucht die Datei "mod_changelanguage.tpl" zu ändern. Aber irgendwas habe ich falsch gemacht. Es klappt jetzt auf jeden Fall. Ich habe die Zeilen für den div container in besagter Datei einfach gelöscht und mit <div id="topmenu"> ersetzt.

    Statt
    PHP-Code:
    <div class="<?php echo $this->class?> block"<?php echo $this->cssID?><?php if ($this->style): ?> style="<?php echo $this->style?>"<?php endif; ?>>
    steht jetzt einfach
    PHP-Code:
    <div id="topmenu"
    da. So macht man das, wenn man nicht wirklich 100% Ahnung von dem hat was man macht.

    Allerdings wird das natürlich bei einem Update der Erweiteurng flöten gehen. Vielleicht kann ich das Ganze noch etwas eleganter lösen.

    Danke,
    Rudy

  4. #4
    Contao-Fan
    Registriert seit
    22.06.2009.
    Beiträge
    275

    Standard

    Hallo Rudy,
    schau mal hier http://www.ndhe.de
    Das ist genau mit dem beschriebenen Modul realisiert. Seiten genaues umschalten, automatische Erkennung en oder de und einfach noch der
    Link zum manuellen Umschalten. Ein tpl habe ich dafür nicht anpassen müssen.
    Güsse Jörg

  5. #5
    Contao-Nutzer Avatar von Rµdy
    Registriert seit
    20.07.2009.
    Beiträge
    11

    Standard

    Danke jörg. Ihc hab mir das mal auf die Schnelle angeschaut.

    Code:
    .mod_changelanguage{left:600px;top:3px;position:absolute;}
    * html .mod_changelanguage{left:600px;top:18px;position:absolute;}
    *:first-child+html .mod_changelanguage{left:600px;top:18px;position:absolute;}
    .mod_changelanguage ul{list-style-type:none;}
    Heute Abend werde ich das dann mal ausprobieren.

    Also vielen Dank für deine Hilfe, bin absolut kein Profi...


    ============================

    Vielen Dank Jörg. Ich habe deinen CSS Code ein wenig auf meine Bedürfnisse angepasst und es funktioniert super.
    Geändert von Rµdy (22.07.2009 um 20:04 Uhr)

  6. #6
    Contao-Nutzer Avatar von Rµdy
    Registriert seit
    20.07.2009.
    Beiträge
    11

    Standard

    Sag mal Jörg, hst du irgendeine Lösung für die Suche gefunden. Weil das Suchformular verlinkt immer entweder NUR auf die deutsche oder die englische Suchseite, je nachdem welche ich im Modul "Topmenu" eintrage.

    Wie erkennt TYPOlight bzw. Changelanguage die aktuelle benutzte/vom User erzwungene Sprache? Vorher habe ich die Sprach mithilfe meiner festen Domains für die jeweilige Sprache per PHP erkannt und dann das entsprechende Suchformular angezeigt. Das geht jetzt leider nicht mehr oder nur noch eingeschränkt. Ich könnte die Sprache mit der Methode nur an den URLs erkennen die bei mir so aufgebaut sind: www.domain.de/SPRACHE/alias.html Allerdings funktioniert das erst, wenn der Benutzer auf mindestens einen Link geklickt hat, weil die URL vorher nur www.domain.de ist.

    Als notdurftige Lösung finde ich das ganze schon okay, aber falls du eine bessere Idee hast.

  7. #7
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Rµdy,
    für den Fall brauchst du für jede Sprache ein Suchmodul, das auf die jeweils passende Seite verlinkt.
    Dadurch kommt da nichts durcheinander.

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  8. #8
    Contao-Nutzer Avatar von Rµdy
    Registriert seit
    20.07.2009.
    Beiträge
    11

    Standard

    Mh... dann brauche ich also zwei Layouts, ein deutsches und ein englisches. Dann kann ich die sprachlich angepassten Module in das Layout einfügen und den Seiten das jewilig richtige Layout zuweisen. Das mach ich dann aber morgen. Danke.
    Geändert von Rµdy (22.07.2009 um 21:01 Uhr)

  9. #9
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ja, das ist das beste vorgehen.
    Du kannst aber bei beiden das selbe Template als Grundlage nehmen. Also einfach das eine Kopieren und die passenden Module einbringen und fertig ;-)

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  10. #10
    Contao-Fan Avatar von Nils Riel
    Registriert seit
    19.06.2009.
    Beiträge
    730

    Standard

    Warum nimmst du nicht das iflng-Insettag?

  11. #11
    Contao-Nutzer Avatar von Rµdy
    Registriert seit
    20.07.2009.
    Beiträge
    11

    Standard

    @MacKP: Ja genau so hatte ich das vor. Das Ganze ist natürlich um einiges leichter und sinnvoller als mein Vorgehen. So kann ich ja auch ein zweisprachigen Footer/Header einbauen. Vielen Dank für den super Tipp!

    @Nils Riel: Sry, ich hab deinen Post gar nicht gesehen. Das wäre natürlich die einfachste Lösung. Dann muss ich nicht immer zwei Layouts anpassen. Den InsertTag habe ich nicht gekannt.
    Geändert von Rµdy (22.07.2009 um 21:16 Uhr)

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 11.11.2010, 15:55
  2. Antworten: 0
    Letzter Beitrag: 25.08.2010, 20:13
  3. Antworten: 4
    Letzter Beitrag: 23.05.2010, 21:29
  4. Antworten: 7
    Letzter Beitrag: 15.11.2009, 17:23

Lesezeichen

Lesezeichen

Berechtigungen

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