Attribut "Inhaltselement" für MetaModels möglich?
Hallo,
momentan gibt es ja nur fixe Attribute die man in MetaModels auswählen kann. Wenn aber nicht immer komplett einheitliche Einträge hat, sondern z.B. auch mal ein Akkordeon oder ein anderes Inhaltselement in einen Katalog-Eintrag einbinden möchte, kann man momentan ja nur mit Inserttags arbeiten, richtig?
Daher fände ich es schön, wenn man als Attribut eine Möglichkeit hätte "Inhaltselement" auszuwählen, so dass man ähnlich wie bei den Artikeln oder News die freie Wahl hat, welches Element man einfügen möchte.
Soll nur als Anregung dienen. Ich fände es jedenfalls nützlich, aber eventuell gibt es ja auch Gründe, die dagegen sprechen.
Danke.
Gruß
Christoph
Liste der Anhänge anzeigen (Anzahl: 1)
Die tl_content von Contao ist doch darauf ausgelegt mehrere Quellen (ptable) zu haben. Was spricht dagegen, diese für ein MetaModel zu nutzen?
Man muss nur etwas tricksen, sodass MM dann die tl_content akzeptiert. Hier mal eine POC Implementierung.
Um Inhaltselemente für ein MM zu aktivieren, muss dieses in der config.php eingetragen werden:
PHP-Code:
<?php
$GLOBALS['METAMODELS_CONTENT_ELEMENTS'] = array('mm_termin');
Um im MM-Template an die CEs zu kommen, reicht dann folgendes:
PHP-Code:
<?php
$collection = \ContentElement::findPublishedByPidAndTable($idDesMM, 'mm_mein_mm');
if ($collection) {
foreach($collection as $content) {
echo \Controller::getContentElement($content);
}
}
Hm, vielleicht mach ich mal ein Modul draus. Obwohl, nee. Ich glaub, ich habe eh schon zu viele draußen. ;-)
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Webstar,
sorry, irgendwie hatte ich über die Sommerferien die Sache aus den Augen verloren...
... nun aber einen kleinen Testcase aufgesetzt.
Ich habe (in Contao2go) ein Contao 3.5.4 mit MM vom etwa 30.10.15 (5e3248c7) - folgendes Vorgehen:
* Deine Dateien unter /system/modules gepackt
* in der config.php den Tabellennamen geändert
* event_llisteners die Zeile "'icon' => 'article.gif'," geändert - die zwei Stifte verwirr(t)en etwas..
In der BE-Ansicht ist in der Auflistung nun vor dem Stift ein neues Icon - wenn man darauf klickt, sieht man die Conten-Element-Ansicht mit "+ Neues Element".
Klickt man auf den Eintrag, kommt leider kein "Einfügen-Klemmmappen-Icon" sondern nur "Ablage leeren" - siehe Screenshot
Anhang 16813
Edit: ich habe mal ein CE angelegt und per phpMyAdmin die Werte für pid auf 1 und ptable auf mm_portfolio geändert - damit kommt auch keine Anzeige ins Backend...
Artikel als Kindelement von MM (Contao 4.9)
Hallo Zusammen
Da dies nun schon ein paar Jahre her ist, ich aber leider nichts aktuelleres finden konnte, schreibe ich mal hier.
Die unter #14 angegebene Lösung habe ich versucht, verstehe aber nicht genau wie das funktioniert oder ob das noch funktioniert.
Vielleicht gibt es ja mittlerweile eine einfachere Lösung für mein Problem:
Ich hab ein MM erstellt, welches ein "Forschungspapier" beschreibt. Jedem dieser Forschungspapiere, sollen unterschiedliche und
unterschiedlich viele "Erkenntnisse" hinzugefügt werden können. Dazu habe ich eine Child-MM für die "Forschungspapiere" angelegt.
Im Frontend gebe ich dan für das jeweilige Paper die im Backend eingefügten "Kinder" aus. Dies funktioniert auch soweit, nur ist dem
Kunde die Eingabe der "Kinder" zu beschränkt. Er möchte gerne alle Inhaltselemente von Contao zur Verfügung haben, wo wie das in den Artikeln
der Fall ist.
Nun die Frage: Kann ich irgendwie die Kind-Elemente ("Erkenntnisse") als Artikel aber unter dem jeweiligen "Paper" als Kind einfügen?
Nachhilfe für manuelle Installation
Vielen Dank für die Antwort, leider verstehe ich nicht ganz
wie ich das manuell installieren kann :rolleyes:
1. Ich lade die Dateien von Github (https://github.com/MetaModels/attribute_contentarticle)
2. Ich lade den Ordner in root/vendor/metamodels
3. Ich leere den Cache über den Contao-Manager
Bis hierhin gemacht nun sollte das Attribut zur Auswahl
im Contao Backend > Metamodel -> Attribute erscheinen(?)
Ich nehme an ich habe irgendwas falsche gemacht? Muss ich noch
irgendwo etwas eintragen, kopieren oder erstellen?