Liste der Anhänge anzeigen (Anzahl: 1)
Verwandte Einträge auflisten - List related Items
Hallo Zusammen,
versuche seid einiger Zeit Auf einer Seite auf der das Module Katalog Eintrag (catolog reader) dargestellt wird zusätzlich verwandte Einträge aufzulisten.
Ich habe dies über ein neues Neues Element auf der Seite versucht. Am ehesten schien mir das Module Catalog Reference dafür geeignet. Ich habe es mit folgenden Einstellungen probiert:
https://community.contao.org/de/atta...1&d=1264590160
Das funktionier allerdings nicht! Also es soll auf der Seite des Autors seine Publikationen gelistet werden. Wenn ich die Auswahl umkehre also als Katalog: Publications angebe und als Selected reference catalog Authors kommt immerhin die Ausgabe:
Code:
There are no entries matching your search.
Liegt mein Problem evtl. daran das es sich bei dem Feld Author/Authors [authors:tags] um ein mehrfach Auswahl handelt? Und so keine Übereinstimmung gefunden werden kann?
Also vll. hat ja jemand einen nützlichen Tipp für mich wie ich mit diesem Problem weiterkomme...
Besten Gruß
Valentin
Verwandte Einträge auflisten - List related Items - GELÖST
Der Fehler war überigens das ich es zu Beginn mit $_GLOBALS statt mit $GLOBALS probiert hatte... immerhin hab ich noch den Fehler gefunden ;)
Um das ganze jetzt auch im Forum abzuschließen, ich hab es jetzt folgender maßen gelöst:
Modul 1 (z.B. Autor Details):
PHP-Code:
unset($GLOBALS['search']);
$GLOBALS['search'] = array ('authors' => $this->entries[0]['id']);
// Key => ID
Modul 2 (z.B. Publikationsliste):
PHP-Code:
if (count($this->entries)):
$count = 0; // zählt gelistete Einträge
foreach ($this->entries as $entry):
$filter = false; // es wird nichts gefiltert
// Precheck
if (isset($GLOBALS['search'])): // wenn Sucharray vorhanden
$key = array_keys($GLOBALS['search']); // key[0] dannach gefiltert
if (is_array($entry['data'][$key[0]])) // nur filtern wenn Key auch in $entry['data'] vorhanden
$filter = true;
endif;
// eigentlicher Check
if ($filter == false || in_array($GLOBALS['search'][$key[0]], explode(',',$entry['data'][$key[0]]['raw']))):
//
// Ausgabe des Listeneintrags
//
$count++; // Eintrag ausgegeben
endif;
endforeach;
endif;
// wenn keine Ausgabe erfolgte...
if ($count == 0) echo '<p class="info">There are no publications matching.</p>';
So das hat den Vorteil das man die Liste auch von verschiedenen Bedingungen filtern lassen kann. Es muss lediglisch der Entsprechende Key im 1. Modul angegeben werden, in diesem Beispiel "authors".
So hoffe es hilft irgendjemand weiter...
Gruß V.
PS: Wie schließe ich den Post?