ich mißbrauche das News-System etwas angepasst zur Artikelvorschau.
Jetzt stelle ich aber fest das dieses Modul nur eine Unterebene nutzt. Wie könnte ich das anpassen, damit er noch z.B. 2 Ebenen tiefer suchen geht?
Hier mein Eingabecode:
Code: Alles auswählen
<?php
/**
*===============================
* Modul: News-System
* Bereich: Eingabe
* Version: 1.0
* Redaxo Version: 4.2
*
* Features:
* - Wahlweise Onlinestatus Artikel
* - Wahlweise Onlinestatus Kategorien
* - Wahlweise Erstelldatum
* - Wahlweise Verfasser/Autor
* - Auswahl Subkategorien
* - Auswahl eigene Kategroie
* - Angabe der Artikelvorschaulänge
* - Anzeige des Metafile/Bildes
* - Sortierung nach
* - - Erstell Datum
* - - Update Datum
* - - Name
* - - Priorität
* - Debugging
*
* Erstellt von:
*
* Jan Menzel
* www.arche-netvision.de
* jan.menzel ( at ) arche-netvision.de
* Datum: 08.07.2009
*
*===============================
*/
//CSS für die Moduleingabe
echo('
<style type="text/css">
.ns_section
{
float: left;
width: 100%;
border-bottom: 1px solid lightgrey;
margin-top: 5px;
margin-right: 5px;
padding-bottom: 10px;
}
.ns_block
{
float:left;
width: 350px;
}
.ns_headline
{
font-weight: bold;
margin-bottom: 5px;
width: auto;
}
input
{
margin-top: 7px;
}
</style>
');
$value1 = explode("~~","REX_VALUE[1]");
echo('<div class="ns_section">');
echo('<div class="ns_block">');
echo('<span class="ns_headline">Wählen Sie die Unterkategorien aus, aus denen die Newsartikel angezeigt werden sollen</span>');
echo('<br />');
echo('<span>');
$select = new select();
$select->set_name('VALUE[1][]');
$select->multiple(true);
foreach(OOCategory::getChildrenById("REX_CATEGORY_ID", false, false) AS $category)
{
$select->add_option($category->getName(), $category->getId());
if(in_array($category->getId(), $value1))
{
$select->set_selected($category->getId());
}
}
echo($select->out());
echo('</span>');
echo('<br style="clear:both;" />');
echo('<span>');
echo('<label style="width:auto; margin-right: 15px;" for="chk_ownCat">Eigene Kategorie mit einbeziehen</label>');
if("REX_VALUE[6]" == "on" || "REX_VALUE[6]" == "On" || "REX_VALUE[6]" == 1)
{
echo('<input type="checkbox" checked="checked" id="chk_ownCat" name="VALUE[6]">');
}
else
{
echo('<input type="checkbox" id="chk_ownCat" name="VALUE[6]">');
}
echo('</span>');
echo('</div>');
echo('<div class="ns_block">');
echo('<span class="ns_headline">Online / Offline - Status berücksichtigen?</span>');
echo('<span style="float:left; width:200px;">');
if("REX_VALUE[2]" == "on" || "REX_VALUE[2]" == "On" || "REX_VALUE[2]" == 1)
{
echo('<input type="checkbox" checked="checked" name="VALUE[2]" id="cat_online">');
}
else
{
echo('<input type="checkbox" name="VALUE[2]" id="cat_online">');
}
echo('<label for="cat_online">Kategorien</label>');
echo('</span>');
echo('<span style="float:left; width:200px;">');
if("REX_VALUE[3]" == "on" || "REX_VALUE[3]" == "On" || "REX_VALUE[3]" == 1)
{
echo('<input type="checkbox" checked="checked" name="VALUE[3]" id="art_online">');
}
else
{
echo('<input type="checkbox" name="VALUE[3]" id="art_online">');
}
echo('<label for="art_online">Artikel</label>');
echo('</span>');
echo('</div>');
echo('</div>');
echo('<br style="clear:both" />');
echo('<br />');
echo('<div class="ns_section">');
echo('<span class="ns_headline">Anzahl der Zeichen, die von einem News-Artikel angezeigt werden sollen:</span>');
echo('<br />');
echo('<input name="VALUE[4]" value="REX_VALUE[4]" />');
echo('<br style="clear:both" />');
echo('<span>');
if("REX_VALUE[8]" == "on" || "REX_VALUE[8]" == "On" || "REX_VALUE[8]" == 1)
{
echo('<input type="checkbox" checked="checked" id="chk_useCreated" name="VALUE[8]">');
}
else
{
echo('<input type="checkbox" id="chk_useCreated" name="VALUE[8]">');
}
echo('<label style="width:150px; margin-right: 15px;" for="chk_useCreated">Erstelldatum anzeigen</label>');
echo('</span>');
echo('<br style="clear:both" />');
echo('<span>');
if("REX_VALUE[9]" == "on" || "REX_VALUE[9]" == "On" || "REX_VALUE[9]" == 1)
{
echo('<input type="checkbox" checked="checked" id="chk_useCreatedBy" name="VALUE[9]">');
}
else
{
echo('<input type="checkbox" id="chk_useCreatedBy" name="VALUE[9]">');
}
echo('<label style="width:150px; margin-right: 15px;" for="chk_useCreatedBy">Verfasser anzeigen</label>');
echo('</span>');
echo('</div>');
echo('<br style="clear:both" />');
echo('<div class="ns_section">');
echo('<span class="ns_headline"><label style="width:auto;" for="select_sort">Sortierung der News-Artikel:</label></span>');
echo('<br style="clear:both" />');
echo('<select name="VALUE[5]" id="select_sort">');
foreach (array("Priorität" => "Prio","Name" => "Name","Erstell Datum" => "CreateDate","Update Datum" => "UpdateDate") AS $key => $value)
{
echo ('<option value="'.$value.'" ');
if ("REX_VALUE[5]"=="$value" )
{
echo ('selected="selected" ');
}
echo ('>'.$key.'</option>');
}
echo('</select>');
echo('</div>');
echo("Debugging :<br />");
$select = new select();
$select->set_name('VALUE[7]');
$select->setsize('0');
foreach(array('Anschalten' => 1, 'Ausschalten' => 0) AS $value => $key)
{
$select->add_option($value, $key);
if("REX_VALUE[7]" == $key)
{
$select->set_selected($key);
}
}
echo($select->out());
?>
Code: Alles auswählen
$select = new select();
$select->set_name('VALUE[1][]');
$select->multiple(true);
foreach(OOCategory::getChildrenById("REX_CATEGORY_ID", false, false) AS $category)
{
$select->add_option($category->getName(), $category->getId());
if(in_array($category->getId(), $value1))
{
$select->set_selected($category->getId());
}
}
echo($select->out());
Anregungen oder Hilfe sind mir sehr willkommen.
Vielen Dank!
mfG
Eru