---
title: "Kleine Extension - Liste Ausgeben mit zwei Rows"
url: "https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage","PHP"]
created: "2011-07-08"
last_reply: "2011-07-12"
replies: 4
solved: false
page: 1
pages: 1
lang: "de"
---

# Kleine Extension - Liste Ausgeben mit zwei Rows

Extensions › Entwicklung · 4 Antworten · gestartet 2011-07-08

## Eröffnungsbeitrag

**lil-trick** · 2011-07-08 · [Beitrag #1](https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows/1)

Ich hab eine kleine Extension geschrieben mit der ich ein Template mit Items füllen möchte.

Hier ist mein Template

```html
<!-- ###LISTVIEW### -->

<ul class="lof-main-wapper">
    <!-- ###ROWEINS### -->
    <li class="hoverboxes-liste-entry">###TITLE###</li>
    <!-- ###ROWEINS### -->
</ul>
<ul class="lof-navigator">
    <!-- ###ROWZWEI### -->
    <li>###IMAGEKLEIN###</li>     		
    <!-- ###ROWZWEI### -->
</ul>
<!-- ###LISTVIEW### -->
```

ich hab in meiner Listenansicht also zwei ul´s die ich befüllen möchte - mit einem funktioniert das ja ohne Probleme - jedoch mit zwei Rows hab ich so meine Probleme. Hier ist meine PHP Datei:

```php
$subpart=$this->cObj->getSubpart($this->template,'###LISTVIEW###'); 
        	

$singlerow=$this->cObj->getSubpart($subpart,'###ROW###');
$singlerowzwei=$this->cObj->getSubpart($subpart,'###ROWZWEI###');

$res=$GLOBALS['TYPO3_DB']->exec_SELECTquery(
'*',
'tx_opusheader_gallery',
'hidden=0 and deleted=0 and pid='.$this->id,  #where
$groupBy='uid',
$orderBy= 'sorting',
$limit='');
        	
while($row=$GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
        	
$markerArray['###TITLE###']= $row['titel'];
$markerArrayzwei['###IMAGEKLEIN###']= $row['image'];
        			
$liste .= $this->cObj->substituteMarkerArrayCached($singlerow,$markerArray);
$listezwei .= $this->cObj->substituteMarkerArrayCached($singlerowzwei,$markerArray);
        			
}

$subpartArray['###ROW###']=$liste;       	
$subpartArrayzwei['###ROWZWEI###']=$listezwei;
        	
return $this->cObj->substituteMarkerArrayCached($subpart,$markerArray,$subpartArray,$subpartArrayzwei,array());
```

gibt mir auch alles aus nur die Eintrage bei ROWZEI kommen dann immer doppelt und ein paar davon sogar drei mal vor :(

vielleicht kann mir einer helfen, Danke

## Antworten

### [#2](https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows/2) · vince · 2011-07-11

Hallo,

In der Zeile $listezwei .= $this->cObj-> usw. :
ersetz da mal "$markerArray" durch "$markerArrayzwei".

Außerdem: $subpartArrayzwei brauchst Du nicht unbedingt, das eine subpartArray reicht.

Gruß,
Vince.

### [#3](https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows/3) · BlackPixel · 2011-07-11

Hallo,

ich möchte gerne auf diese T3 Wiki Eintrag verweisen. Ist ziemlich gut und erklärt recht genau wie mit Templates arbeiten (Auch subparts etc. falls Du das noch benötigst!) : <http://wiki.typo3.org/wiki/Extension_Development,_using_HTML-Templates>

Gruß Manfred

### [#4](https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows/4) · aemka · 2011-07-11

Ich würde keine Zeit mehr in diese prähistorische und umständliche Art des Templatings stecken und mir lieber Fluid ansehen:
<http://wiki.typo3.org/wiki/Fluid>

### [#5](https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows/5) · Julian.​Hofmann · 2011-07-12

Hallo.

Wenn ich das richtig verstehe, dann sollen zwei unabhängige Listen generiert werden, die aber auf den gleichen Datensätzen basieren. Im einfachsten Fall könntest Du die Marker daher in einem gemei nsamen Array führen und lediglich das Vorkommen in den Subpart-Templates entscheidet, welche Inhalte des Datensatzes sichtbar werden (weil Marker enthalten ist - oder eben nicht).

Den letzten Methoden-Aufruf kann ich nicht ganz nachvollziehen. Deine Subparts dürften ins gleiche SubpartArray gehören. $subpartArrayzwei als dritten Parameter an substituteMarkerArrayCached() zu übergeben, wirkt mir inkorrekt, wenngleich sich mit die Wirkung dieses Parameters (wrappedSubpartContentArray) nicht verständlich ist.

```php
$subpart = $this->cObj->getSubpart($this->template, '###LISTVIEW###');

$singlerow = $this->cObj->getSubpart($subpart, '###ROW###');
$singlerowzwei = $this->cObj->getSubpart($subpart, '###ROWZWEI###');

$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
	'*',
	'tx_opusheader_gallery',
	'hidden=0 and deleted=0 and pid=' . $this->id, #where
	'uid',
	'sorting',
	'');

$liste = '';
$listezwei = '';
if ($res) {
	while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {

			// Alle Eigenschaften in EINEM Array sammeln...
		$markerArray['###TITLE###'] = $row['titel'];
		$markerArray['###IMAGEKLEIN###'] = $row['image'];

			// ...und auf unterschiedliche (Sub-)Templates anwenden
		$liste .= $this->cObj->substituteMarkerArrayCached($singlerow, $markerArray);
		$listezwei .= $this->cObj->substituteMarkerArrayCached($singlerowzwei, $markerArray);
	
	}
}
$subpartArray['###ROW###'] = $liste;
$subpartArray['###ROWZWEI###'] = $listezwei;

return $this->cObj->substituteMarkerArrayCached($subpart, $markerArray);
```

Viele Grüße
Julian

---

Quelle: „Kleine Extension - Liste Ausgeben mit zwei Rows“, typo3.net, https://www.typo3.net/d/106213-kleine-extension-liste-ausgeben-mit-zwei-rows
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
