Ergebnis 1 bis 13 von 13

Thema: Gesetzer Filter > Wert ausgeben

  1. #1
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard Gesetzer Filter > Wert ausgeben

    Habe mal eine konkrete Frage zur Beispielwebseite Movie Database.
    Die Lösung ist warscheinlich recht simpel...

    Wie kann ich den aktuellen Filter wie in dem Beispiel

    Zeige alle Einträge Regie von jared-bush
    ausgeben?

  2. #2
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.778
    User beschenken
    Wunschliste

    Standard

    habe mal nachgesehen... hier wurde das in das Template ce_metamodel_list reingewurstelt und einfach die GET-Parameter übernommen (mit Übersetzung)

    ich hätte das in das metamodel_prerendered rein gesetzt - mach mal ein Template-Debug wie im Handbuch beschrieben, dann solltest Du den Wert finden...

  3. #3
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard

    Zitat Zitat von zonky Beitrag anzeigen
    mach mal ein Template-Debug wie im Handbuch beschrieben, dann solltest Du den Wert finden...
    Da hab ich mir schon nen Wolf gesucht und irgendwann aufgegeben.

    Hintergrund ist einfach, dass durch die Filterung im Frontend unzählige URLs entstehen, die alle den selben pageTitle und h1 haben.
    Aus SEO sicht wäre es aber nicht unbedeutend den aktuellen Filterwert in pageTitle und als h1 auszugeben...

    Jemand weitere Vorschläge bzw schon umgesetzt?

  4. #4
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.778
    User beschenken
    Wunschliste

    Standard

    füge mal das Template-Debugging ein und poste Deine Seite... was als GET-Parameter an die MM-Liste übergeben wird, sollte sich als Wert dort auch wiederfinden => ergo auch ausgeben lassen

    wenn alle Stricke reißen, mach wie in der MM-Demo: gib die GET-Parameter einfach wieder aus

  5. #5
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard

    Zitat Zitat von zonky Beitrag anzeigen
    füge mal das Template-Debugging ein und poste Deine Seite...
    Würd ich ja gern machen ist aber bei einer produktiven Seite schwierig, da nur eine weiße Seite und die Meldung

    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 67219660 bytes)
    ausgegeben wird...

  6. #6
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.778
    User beschenken
    Wunschliste

    Standard

    könnte daran liegen: http://metamodels.readthedocs.io/de/...templates.html

    Ist in den Render-Einstellungen die Weiterleitung und Filter für die Detailseite eingestellt, wird die Ausgabe des Arrays im Quelltext sehr umfangreich und führt häufig zu einem Error „Allowed memory size…“. Abhilfe schafft hier z.B. das kurzzeitige Abschalten des Filters für die Weiterleitung.
    oder hast Du das schon getestet?

  7. #7
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard

    Mal wieder das Handbuch nicht richtig gelesen

    Hier der Link zur Seite > Link

  8. #8
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.778
    User beschenken
    Wunschliste

    Standard

    z.B. https://www.students-freiburg.de/gas...rchzarten.html

    Deine Filterung steht doch hier

    PHP-Code:
    Array
    (
        [
    0] => Array
            (
                [
    raw] => Array
                    (
                     ...
                [
    text] => Array
                    (
                        [
    name] => Fiesta
                        
    [neueroeffnung] => 
                        [
    kueche] => 
                        [
    vorschaubild] => 
                        [
    published] => 1
                        
    [stadt] => Kirchzarten
                        
    [stadtteil] => 
                        [
    kategorie] => Bars KneipenRestaurants
                    

    [stadt] => Kirchzarten

    entweder du gibst das beim ersten Item aus (über einen Zähler im foreach ... $i == 0 ...) oder wie beim Debug
    PHP-Code:
    $this->items->parseAll($this->getFormat(), $this->view)[0]['text']['stadt'
    m.E. kommt die MM-Listenausgabe vor dem letzten Rendering von Contao, d.h. du kannst aus den Seitentitel noch ändern ... irgendwas mit $objPage->pageTitle = 'Stadt ' . $myCity;

  9. #9
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard

    Danke fürs drüberschaun. Werds versuchen!

  10. #10
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.778
    User beschenken
    Wunschliste

    Standard

    man kann das natürlich auch in das Filtertemplate einbauen... aber das das metamodels_prerendered eh meistens angefasst wird, finde ich das hier "einfacher"

  11. #11
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard

    Zitat Zitat von zonky Beitrag anzeigen
    z.B. https://www.students-freiburg.de/gas...rchzarten.html

    Deine Filterung steht doch hier

    PHP-Code:
    Array
    (
        [
    0] => Array
            (
                [
    raw] => Array
                    (
                     ...
                [
    text] => Array
                    (
                        [
    name] => Fiesta
                        
    [neueroeffnung] => 
                        [
    kueche] => 
                        [
    vorschaubild] => 
                        [
    published] => 1
                        
    [stadt] => Kirchzarten
                        
    [stadtteil] => 
                        [
    kategorie] => Bars KneipenRestaurants
                    

    Das haut so leider nicht ganz hin. Das sind ja lediglich die Daten des 1. Items in der Listenansicht die abgegriffen werden.
    d.h. wenn in dem Beispiel noch kein Stadtteil ausgewählt wurde wird trotzdem der Stadtteil des 1. Items in der Liste ausgegeben...

    Könnte ich zwar so machen, aber dann müsste ich nach Filterung auf eine neue Seite weiterleiten.

  12. #12
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.778
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von marcohe Beitrag anzeigen
    d.h. wenn in dem Beispiel noch kein Stadtteil ausgewählt wurde ...
    dann hast Du auch nichts gefiltert! nach einer Filterung nach stadt = kirchzarten sollten ja alle Items Stadt = Kirchzarten haben... oder ;-)

    Du kannst doch den/die GET-Parameter abfragen, um einen Defaultwert zu setzen... z.B.

    PHP-Code:
    \Input::get('stadt'

  13. #13
    Contao-Fan
    Registriert seit
    20.10.2014.
    Beiträge
    494

    Standard

    Zitat Zitat von zonky Beitrag anzeigen

    PHP-Code:
    \Input::get('stadt'
    So funktionierts ganz ok. Danke dir.

    PHP-Code:
    <?php

    $filterStadt 
    = \Input::get('stadt');
    $filterStadt ucfirst($filterStadt);
    $filterStadtteil = \Input::get('stadtteil');
    $filterStadtteil preg_replace '/[^a-z0-9 ]/i'' '$filterStadtteil ); 
    $filterStadtteil ucwords($filterStadtteil);

    $ort "";
    if (empty(
    $filterStadtteil)) {
        
    $ort.=$filterStadt;
    }
    else 
    $ort.=$filterStadtteil;

    ?>

    <?php 
    global $objPage
    $objPage->pageTitle ="".$arrItem['text']['kategorie']." ".$ort?>
    Geändert von marcohe (31.03.2018 um 17:01 Uhr)

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
  •