jack09 Posted January 20, 2010 Report Share Posted January 20, 2010 Hallo, ich habe einen Link-/Kategoriezweig (z.B. ab level 3) und wollte den über box_categories.html hervorheben. gibt es in etwa so etwas: {if $module_data.upper_parent == '3'} oder {if $parent <= '3'} Ich finde hierfür nicht die passenden Smartys : <li class="level{$module_data.level}{if $module_data.active} active{/if}"{if $module_data.upper_parent == '3'} id="blue"{/if}> viele Grüße, J. Link to comment Share on other sites More sharing options...
dukie6666 Posted January 20, 2010 Report Share Posted January 20, 2010 mach es doch über die css Datei. Die dazugehörige class ist: ul#categorymenu li.level3 Link to comment Share on other sites More sharing options...
jack09 Posted January 20, 2010 Author Report Share Posted January 20, 2010 hi Oliver, mach ich ja - oder ??? Ich versuche eine css-ID für z.B. zwei Zweige zu erzeugen: <ul class="contentlist"> {foreach name=aussen item=module_data from=$_categories} <li class="level{$module_data.level}{if $module_data.active} active{/if}" {if $module_data.categories_name == 'blue'} {if $module_data.level > '0'}id="blue"{/if}{/if}> {if $module_data.categories_name == 'red'} {if $module_data.level > '0'}id="red"{/if}{/if}> <a href="{$module_data.categories_link}">{$module_data.categories_name}</a> {if $module_data.active} <img class="navactive_arrow" src="{$tpl_path}img/arrow.gif" border="0" /> {/if}</li> {/foreach} </ul>[/HTML]das hebt per css-ID momentan nur den ersten Punkt / den oberen Level des Zweiges "blue" oder "red" hervor, deren untergeordnete nicht. Viele Grüße, J. Link to comment Share on other sites More sharing options...
amilo Posted January 20, 2010 Report Share Posted January 20, 2010 Hallo, ich versteh auch nicht so ganz wo das Problem ist. Die Template Datei gibt doch automatisch per Smarty jedem Level eine andere css Klasse. Wozu willst du die jetzt nochmal alle ansprechen? MfG. Hansen Link to comment Share on other sites More sharing options...
jack09 Posted January 20, 2010 Author Report Share Posted January 20, 2010 mmh - und wenn ich einen Kategorie-Link-Zweig von Level 1 - 5 blau und einen anderen Zweig von Level 1 - 5 rot haben möchte, kann Level 1 - 5 auf blau stellen, habe dann aber keinen roten Zweig ... oder? Wie kann ich die "Zweige" (per id="") unterscheiden? Link to comment Share on other sites More sharing options...
amilo Posted January 20, 2010 Report Share Posted January 20, 2010 Hallo, hast du mehrere Kategorieboxen oder wie meinst du das genau? MfG. Hansen Link to comment Share on other sites More sharing options...
jack09 Posted January 21, 2010 Author Report Share Posted January 21, 2010 Hallo amilo, sieht man das so besser? -------------------------------- Kategorie 1 mbox 1-1 boxA 1-1-1 Thema 1-1-1-1 (rot) Thema 1 1-1-1-1 (rot) Thema 1 1-1-1-2 (rot) Thema 1 1-1-1-3 (rot) Thema 1-1-1-2 (blau) Thema 1 1-1-2-1 (blau) Thema 1 1-1-2-1 (blau) Thema 1 1-1-2-1-1 (blau) Thema 1 1-1-2-1-2 (blau) Thema 1 1-1-2-1 (blau) Thema 1-1-1-3 (gelb) ... etc. -------------------------------- also "Zweige" ab Level 3 oder 4 "einfärben", so dass in der Box alle aufgeklappten Links zu einem Thema 1-1-1-1 eine Farbe haben. Gibts in smarty sozusagen einen "Zweigwurzel"-Identifier über den man für einen Zweig sozusagen ein anderes Layout aktivieren kann? viele Grüße, J. Link to comment Share on other sites More sharing options...
amilo Posted January 21, 2010 Report Share Posted January 21, 2010 Hallo, also wenn ich dich jetzt richtig verstehe willst du Kategorien innerhalb eines Levels verschieden einfärben. Dafür kenne ich keine Smarty Variable. Das einzige was mit spontan einfällt wäre ein JQuery Snippet welches css Klassen verteilt. Das geht aber meines Wissens nur für den ersten und letzten Listeneintrag. Oder was du auch noch versuchen könnstest, ist eine Klasse nach Categorie ID zu verteilen. Das ist aber auch nur sinnvoll, wenn sich dein Kategoriebaum nicht viel verändert. MfG. Hansen Link to comment Share on other sites More sharing options...
jack09 Posted January 21, 2010 Author Report Share Posted January 21, 2010 hallo amilo, ja, z.B. innerhalb von boxA 1-1-1 das Thema 1-1-1-1. Danke für den Hinweis. Nachdem es mit dem XT-bürtigen smarty nicht geht, würde ich an php+mysql denken, um so einen "Identifier" zu erzeugen. Das wäre dann auch, was sich hinter "JQuery" "verbirgt", ein php-mysql-zusatz? alle cat-IDs mit der "parent"-ID von Thema 1-1-1-1 sollten eine css-ID in den Link-code bekommen. Mal sehen - dauert dann wohl etwas ... ... das wäre eher was für XT-Professionals - eine Woche und ein praktisches neues PlugIn wäre fertig? viele Grüße, J. Link to comment Share on other sites More sharing options...
jack09 Posted January 26, 2010 Author Report Share Posted January 26, 2010 Hallo, ich habe das jetzt so "gelöst" / einen workaround (da sich sicher noch einiges in meiner Kategoriestruktur ändern): In der xt_categories eine Spalte angefügt und$categories_id = 8; // = first parent item $categories_name = "blue"; function update_children($name, $parent) { // retrieve all children of $parent $result = mysql_query('SELECT categories_id, parent_id FROM xt_categories '. 'WHERE parent_id="'.$parent.'"'); // display each child while ($row = mysql_fetch_array($result)) { // indent and display the ID of this child echo $row['categories_id'].", \n"; // update each child $sql = "UPDATE xt_categories SET categories_css_name='".$name."' WHERE categories_id LIKE ".$row['categories_id']; mysql_query($sql)OR die("<br>Mist:<br>$sql"); // call this function again to display this // child's children update_children($name, $row['categories_id']); } } update_children($categories_name, $categories_id); echo "<br><br>updated: categories/parent_id <b>$categories_id:</b> with <b>$categories_name!</b><br>"; echo "but: only children - the 1. parent-root-one has to be first by hand!!<br>";[/PHP]Als kleine Wartungsscript-Datei markiere/update ich so Datensätze eines Zweiges in einem Durchlauf. in Anlehnung an: http://articles.sitepoint.com/article/hierarchical-data-database Gruß, J. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.