/ Published in: PHP
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
<select name="VALUE[1]" class="inp100"> <?php function getSubCats($catId, $levelMarker) { $subCat = OOMediaCategory::getCategoryById($catId); $selected = ''; if('REX_VALUE[1]' == $subCat->getId()) { $selected = ' selected="selected"'; } $catSelect .= '<option value='.$subCat->getId().' '.$selected.'>'.$levelMarker.$subCat->getName().'</option>'; if($subCat->countChildren()>0) { $levelMarker.= $levelMarker; foreach($subCat->getChildren() as $subCatChild) { $catSelect .= getSubCats($subCatChild->getId(), $levelMarker); } } return $catSelect; } // Zeichen zur Kennzeichnung der Level in der Auswahlliste festlegen // Vorgabe sind zwei feste Leerzeichen wie auch in der Auswahl des Redaxo-Medienpools, // k�nnten aber beliebige andere Zeichen sein (z.B. $levelMarker = '--') $levelMarker = ' '; // Vorbereitung der Auswahlliste mit den Redaxo-OOF $mediaCats = OOMediaCategory::getRootCategories(); $mediaCatSelect = '<option value=0 selected="selected">Keine Kategorie</option>'; // Auswahlliste aufbauen, beginnend mit den Rootkategorien des Medienpools foreach ($mediaCats as $mediaCat) { $selected = ''; if("REX_VALUE[1]" == $mediaCat->getId()) { $selected = ' selected="selected"'; } $mediaCatSelect .= '<option value='.$mediaCat->getId().' '.$selected.'>'.$mediaCat->getName().'</option>'; // Sollten Unterkategorien vorhanden sein, werden diese durch // die Funktion getSubCats in die Auswahlliste eingebaut if($mediaCat->countChildren()>'0') { foreach($mediaCat->getChildren() as $mediaCatChild) { $mediaCatSelect .= getSubCats($mediaCatChild->getId(),$levelMarker); } } } print $mediaCatSelect; ?> </select><br /> <br />
URL: dzoi.de