SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Het volgende stuk code moet daarvoor worden aangepast. Ik heb geen idee hoe:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36{strip}
{if $count > 0}
<ul class='cf'>
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string='<ul>' times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string='</li></ul>' times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}
</li>
{/if}
{if $node->current == true}
<li{if $node->parent == true || $node->haschildren == true} class='parent current'{/if}>
<a href='{$node->url}' class='current'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}</a>
{elseif $node->parent == true && ($node->type != 'sectionheader' && $node->type != 'separator')}
<li class='parent current'>
<a href='{$node->url}' class='current'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}</a>
{elseif $node->type == 'sectionheader'}
<li class='sectionheader'>
<span class='sectionheader {if $node->parent == true} parent{/if}{if $node->current == true} current{/if}'>{$node->menutext}</span>
{elseif $node->type == 'separator'}
<li class='separator'>
<hr class='separator' />
{else}
<li{if $node->parent == true || $node->haschildren == true} class='parent'{/if}>
<a href='{$node->url}'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}</a>
{/if}
{/foreach}
{repeat string='</li></ul>' times=$node->depth-1}</li>
</ul>
{/if}
{/strip}
Een rimjob voor de winnaar.
1 | {menu start_element='2.1' show_root_siblings='1'} |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | {strip} {menu start_element='2.1' show_root_siblings='1'} {if $count > 0} <ul class='cf'> {foreach from=$nodelist item=node} {if $node->depth > $node->prevdepth} {repeat string='<ul>' times=$node->depth-$node->prevdepth} {elseif $node->depth < $node->prevdepth} {repeat string='</li></ul>' times=$node->prevdepth-$node->depth} </li> {elseif $node->index > 0} </li> {/if} {if $node->current == true} <li{if $node->parent == true || $node->haschildren == true} class='parent current'{/if}> <a href='{$node->url}' class='current'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}</a> {elseif $node->parent == true && ($node->type != 'sectionheader' && $node->type != 'separator')} <li class='parent current'> <a href='{$node->url}' class='current'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}</a> {elseif $node->type == 'sectionheader'} <li class='sectionheader'> <span class='sectionheader {if $node->parent == true} parent{/if}{if $node->current == true} current{/if}'>{$node->menutext}</span> {elseif $node->type == 'separator'} <li class='separator'> <hr class='separator' /> {else} <li{if $node->parent == true || $node->haschildren == true} class='parent'{/if}> <a href='{$node->url}'{if $node->target != ''} target='{$node->target}'{/if}>{$node->menutext}</a> {/if} {/foreach} {repeat string='</li></ul>' times=$node->depth-1}</li> </ul> {/if} {/strip} |
1 | {menu start_element='2.1' show_root_siblings='1'} |
quote:Op donderdag 28 augustus 2014 16:12 schreef Cracka-ass het volgende:
Ik ben een tweetalige website in elkaar aan het knutselen en daardoor moet de menustructuur op de schop, namelijk 2,3,4 ipv 1,2,3.Welke taal is dat?SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Het volgende stuk code moet daarvoor worden aangepast. Ik heb geen idee hoe:
[ code verwijderd ]
Een rimjob voor de winnaar.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | {if $count > 0} <div id="menuwrapper"> <ul id="nav"> {foreach from=$nodelist item=node} {strip} {if $node->depth > 1} {if $node->depth > $node->prevdepth && $node->prevdepth > 1} {repeat string="<ul>" times=$node->depth-$node->prevdepth} {elseif $node->depth < $node->prevdepth} {repeat string="</li></ul>" times=$node->prevdepth-$node->depth} </li> {elseif $node->index > 0 && $node->prevdepth > 1} </li> {/if} {if ($node->parent == true or ($node->current == true and $node->haschildren == true)) && $node->type !== 'sectionheader'} <li class="menuactive menuparent tl{$node->hierarchy|truncate:3:""|replace:'8.':''}" > <a class="menuactive menuparent" {elseif $node->current == true && $node->type !== 'sectionheader' } <li class="menuactive tl{$node->hierarchy|truncate:3:""|replace:'8.':''}" > <a class="menuactive" {elseif $node->haschildren == true && $node->type !== 'sectionheader'} <li class="menuparent tl{$node->hierarchy|truncate:3:""|replace:'8.':''}" > <a class="menuparent" {elseif $node->type == 'sectionheader'} <li class="sectionheader tl{$node->hierarchy|truncate:3:""|replace:'8.':''}" > {elseif $node->type == 'separator'} <li style="list-style-type: none;"> <hr class="separator" />{else} <li class="tl{$node->hierarchy|truncate:3:""|replace:'8.':''}"> <a {/if} {if $node->type !== 'sectionheader' and $node->type !== 'separator'} href="{$node->url}" {if $node->accesskey != ''}accesskey="{$node->accesskey}" {/if}{if $node->tabindex != ''}tabindex="{$node->tabindex}" {/if}{if $node->titleattribute != ''}title="{$node->titleattribute}"{/if}{if $node->target ne ""} target="{$node->target}"{/if}>{$node->menutext}</a> {elseif $node->type == 'sectionheader'} <span>{$node->menutext}</span> {/if} {/if} {/strip} {/foreach} {repeat string="</li></ul>" times=$node->depth-2} </li> </ul> <div class="clearb"></div> </div> {/if} |
1 | {menu template='ledenmenu' start_element="8"} |
Ja dat klopt, maar het is wel een nare taal om te lezenquote:Op vrijdag 29 augustus 2014 09:24 schreef KomtTijd... het volgende:
Smarty logica is een vrij groot onderdeel van cmsms. Je hoeft er niet van te houden naar het maakt het wel mogelijk iedere output van iedere pagina, module of wat dan ook, volledig naar je hand te zetten zonder de sourcecode aan te raken.
Dat heeft vooral te maken met het splitsen van presentatie en logica in de architectuur van je applicatie, daar heb je geen Smarty voor nodig.quote:Op vrijdag 29 augustus 2014 09:24 schreef KomtTijd... het volgende:
Smarty logica is een vrij groot onderdeel van cmsms. Je hoeft er niet van te houden naar het maakt het wel mogelijk iedere output van iedere pagina, module of wat dan ook, volledig naar je hand te zetten zonder de sourcecode aan te raken.
1 | start_level="2.1" |
Je moet je data structureren in de backend, niet in je template.quote:Op vrijdag 29 augustus 2014 11:48 schreef KomtTijd... het volgende:
Sja, en PHP-code in een database opslaan en eval()'en is ook weer bad practice. En brengt bovendien de nodige risico's met zich mee.
wat is daarbij jouw definitie van "de backend"? Want in mijn definitie zijn templates onderdeel van een backend.quote:Op vrijdag 29 augustus 2014 16:34 schreef Catch22- het volgende:
[..]
Je moet je data structureren in de backend, niet in je template.
Nou, mijn definitie van Front-end is alles waar html in staat. Zulke logica moet je niet in je html willen hebben, imo. Dat sorteren kan je prima aan de achterkant doen.quote:Op vrijdag 29 augustus 2014 17:01 schreef KomtTijd... het volgende:
[..]
wat is daarbij jouw definitie van "de backend"? Want in mijn definitie zijn templates onderdeel van een backend.
Het menu is een object met menu-items. Dat is de structuur. Hoe die weergegeven wordt defineer je in een template en nergens anders. Daar hoort nou eenmaal enige logica bij. Ditsoort opbouw van HTML hardcoded in de broncode opnemen, dát moet je niet willen!quote:Op vrijdag 29 augustus 2014 17:09 schreef Catch22- het volgende:
[..]
Nou, mijn definitie van Front-end is alles waar html in staat. Zulke logica moet je niet in je html willen hebben, imo. Dat sorteren kan je prima aan de achterkant doen.
Daarom sla je het ook gewoon in een file op en niet in je database. En waarom zou je het eval()'en? Als iemand een syntaxfout maakt, dan werkt het niet. Zo is het leven.quote:Op vrijdag 29 augustus 2014 11:48 schreef KomtTijd... het volgende:
Sja, en PHP-code in een database opslaan en eval()'en is ook weer bad practice. En brengt bovendien de nodige risico's met zich mee.
Dat deden ze in eerdere versies, maar het opslaan in de database heeft voordelen, maakt de templates beter te managen. Volgens mij is dit tegenwoordig ook vrij gebruikelijk.quote:Op vrijdag 29 augustus 2014 17:18 schreef Tijn het volgende:
[..]
Daarom sla je het ook gewoon in een file op en niet in je database. En waarom zou je het eval()'en? Als iemand een syntaxfout maakt, dan werkt het niet. Zo is het leven.
Ik vind niet dat er echt een conceptueel verschil is tussen PHP-code in je database of Smarty-code in je database. Ik snap wel dat het makkelijker is om het te wijzigen op deze manier, omdat je dan geen schrijfrechten op disk nodig hebt enzo, maar echt de schoonheidsprijs wint het allemaal niet.quote:Op vrijdag 29 augustus 2014 17:28 schreef KomtTijd... het volgende:
[..]
Dat deden ze in eerdere versies, maar het opslaan in de database heeft voordelen, maakt de templates beter te managen. Volgens mij is dit tegenwoordig ook vrij gebruikelijk.
quote:Op vrijdag 29 augustus 2014 17:09 schreef Catch22- het volgende:
[..]
Nou, mijn definitie van Front-end is alles waar html in staat. Zulke logica moet je niet in je html willen hebben, imo. Dat sorteren kan je prima aan de achterkant doen.
DIG / [PHP/(My)SQL] voor dummies #117quote:Op vrijdag 29 augustus 2014 21:50 schreef TwenteFC het volgende:
Zijn er hier nog mensen die ook aanwezig zijn Laracon 2014?
Teveel tabjes open staan, sorry.quote:Op vrijdag 29 augustus 2014 21:59 schreef donroyco het volgende:
[..]
DIG / [PHP/(My)SQL] voor dummies #117
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |