contao/import — Issue #3502: Unterstützung für weitere output Fromate
Author: importer
Created: 2011-11-29 21:42:04+00:00
State: open
Labels: Feature, frontend

Hi!

Seit der Version 2.10 (schon früher??) lassen sich ja pro outputFormat eigene Templates anlegen. Das ist wunderbar. Wenn man jetzt weitere anlegen will, dann kann man so was sehr einfach machen.

Also habe ich für ein Projekt versucht ein .json anzulegen und den Inhalt von contao als json auszuliefern. Soweit geht das auch. Leider bin ich beim Artikel hängen geblieben, denn da kommt man ohne Änderungen im core nicht weiter.

Hintergrund: Zeile 188ff in ModuleArticle.php

```
$objCte = $this->Database->prepare("SELECT id FROM tl_content ...")
->execute($this->id);

while ($objCte->next())
{
$contentElements .= $this->getContentElement($objCte->id);
}

$this->Template->teaser = $this->teaser;
$this->Template->contentElements = $contentElements;
```

Da dieser Stelle werden die Inhalte schon aneinander gehängt, denn es wird davon ausgegangen, dass das immer so ist. Und danach an das Template übergeben.

Vorschlag: Die einzelnen Elemente in einem Array sammeln und dann als solches ans Template übergeben. Dann kann das Template über die Ausgabe entscheiden. Das ist aus meiner Sicht auch seine Aufgabe.

Möglicherweise spart das auch etwas Speicher und Laufzeit denn ich muss nicht erste einen String zusammen bauen.

Es gibt bestimmt immer noch weitere Stellen an denen im Code davon ausgegangen wird, dass auf jeden Fall reines HTML ausgeliefert wird und TAGs hart codiert sind. Das sollte aus Gründen der sauberen Trennung auch bereinigt werden, ist aber sicherlich ein anderer Task.

Grüße,

Volker

--- _Originally created by v_r on September 23rd, 2011, at 11:25am (ID 3502)_