Mit dem Destination-Pointer legen wir fest, an welcher Stelle das Element eingefügt werden soll, während „$elementRow“ den „tt_content“-Datensatz enthält, den wir in der Datenbank erzeugen möchten.

Flexform-Pointer

Als Destination-Pointer wird ein String oder Array vom Typ Flexform-Pointer erwartet (siehe auch Kasten). Er bezeichnet die genaue Position, an der das neue Element eingefügt werden soll. Flexform-Pointer werden Ihnen an verschiedenen Stellen wieder begegnen, denn sie werden innerhalb der immer dann verwendet, wenn eine Positionsangabe erforderlich ist.

Die folgenden Zeilen sorgen nun dafür, dass ein neues Element nach dem zweiten (=letzten) Element in dem Bereich „field_content“ der Seite Nr. 1905 angelegt wird:

PHP

$destinationPointer = array(
	'table' => 'pages',
	'uid' => 1905,
	'sheet' => 'sDEF',
	'sLang' => 'lDEF',
	'field' => 'field_content',
	'vLang' => 'vDEF',
	'position' => 2,
);

$elementRow = array(
	'CType' => 'text',
	'title' => 'Test Element',
	'bodytext' => 'Lorem Ipsum und so'
);

$uid = $templavoilaApiObj->insertElement($destinationPointer, $elementRow);

Listing 3

Wenn alles geklappt hat, befindet sich nach dem Aufruf der Funktion „insertElement“ die ID des neuen Elements in „$uid“. Mit folgendem Funktionsaufruf verschieben wir schließlich das neue Element in die rechte Spalte der Seite:

PHP

$sourcePointer = $destinationPointer;
$sourcePointer['position'] = 3;
$sourcePointer['targetCheckUid'] = $uid;
$destinationPointer['position'] = 0;
$destinationPointer['field'] = 'field_rightbar';

$templavoilaApiObj->moveElement($sourcePointer, $destinationPointer);

Listing 4

Eine Reihe von Beispielen finden sich im Quellcode des TemplaVoilà-Seitenmoduls (mod1/index.php).

Seite:  1 2 3 4

Weitere Artikel zu API

Softlink 1699

Links und Literatur

Das interessiert dich bestimmt auch