2016-02-14 3 views
2

Я пытаюсь заказать элементы в меню, но это не работает для меня. Я старался следовать в соответствии с их документами, но он не работает вообще.Элементы меню заказа

В моем заголовке:

 {{ range .Site.Data.Menu }} 
     <li> 

     <a href="{{ .URL | absURL }}" 
     {{ if and (isset . "Title") (ne .Title "") }} title="{{ .Title }}"{{ end }}> 

     {{ if and (isset . "IconClass") (ne .IconClass "") }} 
      <i class="fa {{ .IconClass }}"></i> 
     {{ end }} 

     {{ .Name }} 
     </a> 
     </li> 
     {{ end }} 

menu.toml

[home] 
    Name = "Home" 
    Title = "Home" 
    URL = "/home" 
    weight = 1 

[apparatus] 
    Name = "Apparatus" 
    URL = "/apparatus" 
    weight = 2 

[deliveries] 
    Name = "Deliveries" 
    URL = "/deliveries" 
    weight = 3 

[command] 
    Name = "Command" 
    URL = "/command" 
    weight = 4 

[ambulance] 
    Name = "Ambulance" 
    URL = "/ambulance" 
    weight = 5 

[service] 
    Name = "Service" 
    URL = "/service" 
    weight = 6 

[about] 
    Name = "about" 
    URL = "/about" 
    weight = 7 

[contact] 
    Name = "Contact" 
    URL = "/contact" 
    weight = 8 

меню заканчивается в, казалось бы, случайном порядке. Как мне заказывать их так, как я их хочу?

ответ

2

Вес - сортировка по умолчанию для меню в Хьюго. Ниже приведены некоторые варианты:

{{ range .Site.Data.Menu.Sort }} 
{{ range .Site.Data.Menu.ByName }} 
{{ range .Site.Data.Menu.ByName.Reverse }} 
{{ range .Site.Data.Menu.ByName.Limit 10 }} 
{{ range .Site.Data.Menu.ByWeight }} 
2

У меня была такая же проблема и решена с помощью отрицательных чисел для атрибута веса.

2

Изменить строку:

{{ range .Site.Data.Menu }} 

по:

{{ range sort .Site.Data.Menu "weight"}} 

Это решило проблему для меня.

Смежные вопросы