• twitter image
  • facebook image
  • youtube image
  • linkedin image
Language: CMS Made Simple Czech CMS Made Simple France CMS Made Simple Hungary CMS Made Simple Russia CMS Made Simple Netherlands

All times are UTC




Post new topic Reply to topic  [ 6 posts ] 
Author Message
 Post subject: Menu opbouwen, vraag over template
PostPosted: Wed Nov 15, 2017 8:19 pm 
Offline
Forum Members
Forum Members

Joined: Mon Jul 13, 2009 8:18 pm
Posts: 146
Ben sindskort met de laatste versie van CMSMS aan de slag. De menumanager (Navigator) lijkt iets anders in elkaar te steken dan de versie waar ik ervaring mee heb.

Ik kom dit tegen in een template:
{include file=$smarty.template nodes=$node->children}

Misschien een gekke vraag: wat doet dit stukje?

Ik ben bezig om de nieuwe Bootstrap 4 navbar met dropdown op te bouwen. Deze gebruikt voor een submenu geen dieper liggende lijst meer maar een div met links eronder. Dit stukje code is dus wel handig om te begrijpen! :)

Ik gok dat je naar het template zelf verwijst maar nu alleen de node aanlevert om zo extra code te vermijden?


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: Menu opbouwen, vraag over template
PostPosted: Wed Nov 15, 2017 9:05 pm 
Offline
Power Poster
Power Poster

Joined: Sun Apr 19, 2009 9:33 am
Posts: 1272
{$smarty.template} geeft de naam van de huidige template terug. Voor iedere niveau in het menu wordt de template opnieuw aangeroepen / ingeladen.

In de navigator template voorbeelden die ik gezien heb wordt gewerkt met: "Built-in Functions". Hierbij hoeft de template maar 1 keer ingeladen te worden. Ik denk dat deze vorm iets sneller is:
https://www.smarty.net/docs/en/language ... nction.tpl

Bestudeer de voorbeeld templates van de Navigator eens. Als je website maar 1 niveau gebruikt / geen submenu's heeft heb je dit allemaal niet nodig.


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: Menu opbouwen, vraag over template
PostPosted: Wed Nov 15, 2017 9:10 pm 
Offline
Forum Members
Forum Members

Joined: Mon Jul 13, 2009 8:18 pm
Posts: 146
Het vervelende aan de Bootstrap 4 submenu's (ik heb 1 menu item met een dropdown en child pagina's) is dat deze geen <ul><li></li></ul> meer gebruikt voor de child items maar ineens een <div> om de dropdown aan te geven en alleen links om de pagina's aan te geven:

Code:
<ul class="navbar-nav">
           <li class="nav-item">
        <a class="nav-link" href="#">Features</a>
      </li>
           <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
          Dropdown link
        </a>
        <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
          <a class="dropdown-item" href="#">Action</a>
          <a class="dropdown-item" href="#">Another action</a>
          <a class="dropdown-item" href="#">Something else here</a>
        </div>
      </li>
    </ul>


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: Menu opbouwen, vraag over template
PostPosted: Thu Nov 16, 2017 8:59 am 
Offline
Power Poster
Power Poster

Joined: Sun Apr 19, 2009 9:33 am
Posts: 1272
Wanneer de html opmaak afhankelijk is van het menu niveau. Zal je voor ieder niveau een andere functie moeten maken.

Code:
1. <- main function
1.1 <- sub function


Een andere template gebruiken en deze invoegen met:
Code:
{include file='other_template' nodes=$node->children}
zal ook kunnen werken maar dat maakt het niet overzichterlijker en raad ik dan ook af.

Hier een voorbeeld implementatie die voor Bootstrap zou kunnen werken:

Code:
{Navigator template='navigator_navigation_multilevel'}


Wanneer je 3 menu patterns onder de knie hebt kan je zo'n beetje alles maken. Nested (multi-level) is het lastigste maar daar zijn ook voorbeelden voor te vinden.

** plain (single-level)

https://github.com/FrontEndStudio/cmsms ... ion.14.tpl

Code:
<ul>
<li><a href="#">main 01</a></li>
<li><a href="#">main 01</a></li>
</ul>


** self contained (multi-level) **

https://github.com/FrontEndStudio/cmsms ... vel.93.tpl

Code:
<ul class="main>
  <li><a href="#">main</a></li>
    <ul class="sub>
      <li><a href="#">sub</a></li>
      <li><a href="#">sub</a></li>
    </ul>
</ul>


** nested (multi-level) **

Code:
<ul class="main>
  <li>
    <a href="#">main</a>
    <ul class="sub>
      <li>sub</li>
      <li>sub</li>
    </ul>
  </li>
</ul>


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: Menu opbouwen, vraag over template
PostPosted: Thu Nov 16, 2017 11:38 am 
Offline
Power Poster
Power Poster

Joined: Sun Apr 19, 2009 9:33 am
Posts: 1272
arnoud wrote:
** nested (multi-level) **


Voorbeeld van een nested (multi-level) opmaak:

Code:
{Navigator template='navigator_navigation_multilevel_nested'}


https://github.com/FrontEndStudio/cmsms ... ted.94.tpl

Bekijk ook: /admin/Modules/Navigator/templates/*.tpl daar heb ik mijn inspiratie vandaan.


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: Menu opbouwen, vraag over template
PostPosted: Thu Nov 16, 2017 12:50 pm 
Offline
Forum Members
Forum Members

Joined: Mon Jul 13, 2009 8:18 pm
Posts: 146
Met de standaard templates ben ik bekend. Dat lost alleen het probleem helaas niet op.

Je kunt dezelfde functie/template niet aanroepen voor kind items omdat dit geen list items zijn.

in plaats van de standaard <ul> en <li> tags wordt bij submenu's gebruik gemaakt van <div> en <a> tags.


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 6 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Hosting Nation - Managed CMSMS Hosting