Ergebnis 1 bis 12 von 12

Thema: Länderliste Registrierung bearbeiten

  1. #1
    Contao-Nutzer
    Registriert seit
    21.06.2009.
    Ort
    Neu Purkersdorf, Österreich
    Beiträge
    203

    Standard Länderliste Registrierung bearbeiten

    Hallo !

    Kann mir jemand sagen, wie ich die (endloslaaaaange) Länderliste bearbeiten kann...bzw Reihung der Länder verändern kann...
    Danke Euch !

  2. #2
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Beitrag countries.php

    HI

    in der Datei system/config/countries.php kannst du die Reihenfolge der Länder im Array beliebig verändern. Du solltest allerdings darauf achten, dass diese Änderungen nicht updatesicher sind.

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  3. #3
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Tach Klaus,

    Schau mal unter '/system/modules/backend/languages/de/countries.php' nach.
    Dort siehst du die ganzen Länder die verfügbar sind.

    Bearbeiten aber bitte nicht dort, sondern einfach deinen Code in TL_ROOT/system/config/langconfig.php kopieren.
    TL durchläuft automatisch diese Datei nach der Originaldatei und überschreibt den Wert, wenn was drin steht. So bleibt die Sache updatesicher
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  4. #4
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    aha, ich denke Toflar hat Recht. Wofür ist denn dann die oben genannte Datei?

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  5. #5
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Meiner Meinung nach funktioniert das so:
    1. system/config/countries.php - definiert alle Länder in einem Array
    2. system/modules/backend/languages/de/countries.php - überschreibt das Array mit der entsprechenden Sprache
    3. system/config/langconfig.php wird nach den beiden Files gerendert und ist deshalb die letzte Instanz, die alles überschreiben kann


    TL ist genial
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  6. #6
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Staunendes Gesicht Ah!

    HI

    sehr genial, Toflar (sowohl du als auch TL). Auf den Zusammenhang bin ich jetzt nicht gekommen...

    Ich meine jedoch, dass man in den Sprachdateien nur die Namen umstellen kann, die Reihenfolge muss man in der oben erwähnten Datei ändern, ich kann mich aber auch irren.

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  7. #7
    Contao-Nutzer
    Registriert seit
    21.06.2009.
    Ort
    Neu Purkersdorf, Österreich
    Beiträge
    203

    Standard

    Zitat Zitat von Toflar Beitrag anzeigen
    Tach Klaus,

    Schau mal unter '/system/modules/backend/languages/de/countries.php' nach.
    Dort siehst du die ganzen Länder die verfügbar sind.

    Bearbeiten aber bitte nicht dort, sondern einfach deinen Code in TL_ROOT/system/config/langconfig.php kopieren.
    TL durchläuft automatisch diese Datei nach der Originaldatei und überschreibt den Wert, wenn was drin steht. So bleibt die Sache updatesicher
    Hallo !

    Danke für die Hilfe...komme aber echt noch nicht klar damit..
    PHP-Code:
    $GLOBALS['TL_LANG']['CNT']['at'] = 'Österreich';
     
    $GLOBALS['TL_LANG']['CNT']['de'] = 'Deutschland';
     
    $GLOBALS['TL_LANG']['CNT']['ch'] = 'Schweiz'
    Möchte ja nur diese 3 Länder...

    Habe die auch in die lanconfig.php kopiert...

    ...aber es ändert sich leider nichts...

    möchte aber doch nicht die countries.php verändern...soll ein sauberes system bleiben.


  8. #8
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Hmm ich glaube das dürfte relativ schwierig werden...hab mal gerade ein bisschen nachgeforscht und die Funktion gefunden, die das Länder-Array bildet:
    PHP-Code:
        protected function getCountries()
        {
            
    $return = array();
            
    $countries = array();

            
    $this->loadLanguageFile('countries');
            include(
    TL_ROOT '/system/config/countries.php');

            foreach (
    $countries as $strKey=>$strName)
            {
                
    $return[$strKey] = strlen($GLOBALS['TL_LANG']['CNT'][$strKey]) ? $GLOBALS['TL_LANG']['CNT'][$strKey] : $strName;
            }

            
    $aux = array();

            foreach (
    array_values($return) as $cntr)
            {
                
    $aux[] = $cntr;
            }

            
    array_multisort($auxSORT_ASC$return);
            return 
    $return;
        } 
    Scheinbar müsstest du demnach trotzdem die system/config/countries.php anpassen.
    Wie man hier ebenfalls sieht, wird die Reihenfolge ASC (aufsteigend) bestimmt.

    Das wäre aber dann nicht mehr updatesicher.
    Bin mir aber fast zu 100% sicher, dass es auch schöner ginge und ich einfach zu wenig php Kenntnisse dafür habe.

    Deshalb: Verwende diese Lösung, bis jemand hier die richtige Lösung präsentiert!
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  9. #9
    Contao-Nutzer
    Registriert seit
    21.06.2009.
    Ort
    Neu Purkersdorf, Österreich
    Beiträge
    203

    Standard

    @toflar

    Danke dir jedenfalls...habe ja gerade mal angefangen mit typolight und brauche sicher noch einige zeit bis meine website online gehen kann...viele kleine hürden...aber es macht spaß !

    da es ja auch eine typolight shop gibt..bin ich mir sicher es wird bald jemand sich etwas einfallen lassen...weil beim bestellen nervt die lange Länderliste...kenne das von Oscommerce...

  10. #10
    Alter Contao-Hase Avatar von christian
    Registriert seit
    15.06.2009.
    Ort
    Viersen
    Beiträge
    1.038
    Partner-ID
    387

    Standard

    Hallo Klaus,

    vor dem Problem stand ich auch, als ich für mein Bestellsystem die Länder eingrenzen wollte. Bei mir sieht die Lösung so aus:

    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['country']['options_callback'] = array('chshopCountries', 'listCountries');
    
    class chshopCountries extends Backend
    {
       public function listCountries()
       {
       if (TL_MODE == 'BE') {
          $countries = $GLOBALS['TL_LANG']['CNT'];
       } else {
          $tmp_countries = array();
          $this->import('Database');
          $result = $this->Database->prepare("SELECT countries FROM tl_chshop_zones")->execute();
          while($result->next()) {
             $tmp_countries = array_merge(unserialize($result->countries), $tmp_countries);
          }
          foreach($tmp_countries as $country) 
          {
             $countries[$country] = $GLOBALS['TL_LANG']['CNT'][$country];
          }
       }
       return $countries;
       }
    }
    Deine Funktion zur Einschränkung wäre natürlich anders, aber der Weg über options_callback geht.

    Grüße,

    Christian
    Contao-Partner am Niederrhein
    Templating - Komplettservice - Erweiterungen
    Infos: http://delahaye.de

  11. #11
    Contao-Nutzer Avatar von hensmatt
    Registriert seit
    18.11.2010.
    Beiträge
    72

    Standard

    Hi,

    ich komme mit der Lösung von Christian nicht so ganz klar.

    Kommt der Code in die langconfig.php?
    Wo und wie werden die Länder die in der Liste erscheinen sollen im Code definiert?

    Danke schon mal!

    Gruß Matthias

  12. #12
    Contao-Nutzer Avatar von exens
    Registriert seit
    05.02.2011.
    Ort
    Hamburg
    Beiträge
    58

    Standard

    Ich greife das Thema kurz auf, also meine Lösung ist weitgehend Update sicher und einfach: einfach in der countries.php die gewünschten Länder auskommentieren und per CHMOD die Schreibrechte entfernen bzw. auf 444 setzen.

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. Pflichtfelder bei Registrierung
    Von Vi2i0n im Forum Formulare
    Antworten: 19
    Letzter Beitrag: 10.04.2020, 16:39
  2. Modul Registrierung
    Von lea_engel im Forum Geschützte Bereiche/Mitglieder
    Antworten: 4
    Letzter Beitrag: 01.03.2010, 10:10
  3. Registrierung Template
    Von Alexander im Forum Geschützte Bereiche/Mitglieder
    Antworten: 2
    Letzter Beitrag: 21.02.2010, 13:42
  4. Avatar und Registrierung
    Von 1stof8 im Forum Sonstige Erweiterungen
    Antworten: 3
    Letzter Beitrag: 14.02.2010, 23:05
  5. Google Registrierung
    Von Whitedragon im Forum Layout / Templates / Holy Grail
    Antworten: 1
    Letzter Beitrag: 30.07.2009, 15:01

Lesezeichen

Lesezeichen

Berechtigungen

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