Ergebnis 1 bis 4 von 4

Thema: Conditional Contao Module ...

  1. #1
    Gesperrt
    Registriert seit
    22.06.2009.
    Ort
    Bayern
    Beiträge
    42

    Standard Conditional Contao Module ...

    Hallo Contao Community,
    ich wollte mal folgende Frage in die Runde werfen – mal sehen ob jemand schon so etwas umgesetzt hat oder noch nicht.

    Für die Google-Speed Optimierung ( ALSO NUR FÜR MOBILE ENDGERÄTE) würde ich gerne in Contao unter Artikel das Modul "Google Maps" zwischen sogenannte "CONDITIONAL PHP-TAGS" einbinden, z.B:

    if(strstr(strtolower($_SERVER['HTTP_USER_AGENT']), 'mobile') {
    // KEIN GOOGLE MAPS MODUL ANZEIGEN
    } else {
    ANZEIGE DES GOOGLE MAPS MODULS FÜR DESKTOP PC´s
    }

    Gibt es dafür eine Lösung?

    Vielen Dank für Eure Antwort, bzw. Hilfe ;-)

    - Nico -

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    1. Ein neues Template names mod_html_include_gmaps anlegen.
    2. In diesem Template bspw. folgenden Inhalt einfügen:
      PHP-Code:
      <?php

      if (!\Environment::get('agent')->mobile) {
          \
      Controller::getFrontendModule();
      }
    3. Dann im Theme ein neues Modul vom Typ "HTML" anlegen und dort das mod_html_include_gmaps Template auswählen.
    4. Das HTML Modul im Seitenlayout einbinden (das Google Maps Modul natürlich nicht).

  3. #3
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Man kann Spookys Ansatz nutzen um das ganze noch flexibler zu machen:

    1. Template "mod_html_mobile_module" anlegen
    2. Das Template wie Spooky erwähnt hat aufbauen. Mit den entscheidenenden Unterschied, $this->html zu nutzen.
      PHP-Code:
      <?php 

      if ($this->html && !\Environment::get('agent')->mobile) { 
          echo \
      Controller::getFrontendModule($this->html); 
      }
    3. Nun kann man ein Modul vom Typ HTML auswählen, das Template auswählen und in das HTMl-Eingabefeld die gewünsche ID des Zielmoduls eingeben. Hier das von der Google Maps.


    Vorteil: Man kann das Template wiederverwenden für anderen Content.

    Ach ja, ein duzend Erweiterungen gibt es auch, die dies ermöglichen.

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Schlau, so hatte ich das bisher auch noch gar nicht benutzt

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
  •