2016-11-14 3 views
0

Я пытаюсь отобразить список навигации wordpress на ul, но он не отображается, если я пишу еще несколько слов в элементе списка, который он показывает, я не мог идентифицировать проблему !!!Список навигации Wordpress не отображается

вот мой код: HTML

<div class="menu-toggle"> 
    <div class="one"></div> 
    <div class="two"></div> 
    <div class="three"></div> 
    </div> 
    <nav class="toggle-navg"> 
    <ul role="navigation" class="hidden"> 
     <li> <?php wp_nav_menu(array('theme_location' => 'extra-menu', 'container_class' => 'my_extra_menu_class')); ?></li> 
    </ul> 
    </nav> 
</div> 

и CSS

.menu-toggle { 
    width: 40px; 
    height: 30px; 
    position: absolute; 
    top: 20px; 
    left: 25px; 
    cursor: pointer; 
    z-index:99; 
} 
.menu-toggle.on .one { 
    -moz-transform: rotate(45deg) translate(7px, 7px); 
    -ms-transform: rotate(45deg) translate(7px, 7px); 
    -webkit-transform: rotate(45deg) translate(7px, 7px); 
    transform: rotate(45deg) translate(7px, 7px); 
} 
.menu-toggle.on .two { 
    opacity: 0; 
} 
.menu-toggle.on .three { 
    -moz-transform: rotate(-45deg) translate(8px, -10px); 
    -ms-transform: rotate(-45deg) translate(8px, -10px); 
    -webkit-transform: rotate(-45deg) translate(8px, -10px); 
    transform: rotate(-45deg) translate(8px, -10px); 
} 

.one, 
.two, 
.three { 
    width: 100%; 
    height: 5px; 
    background: white; 
    margin: 6px auto; 
    backface-visibility: hidden; 
    -moz-transition-duration: 0.3s; 
    -o-transition-duration: 0.3s; 
    -webkit-transition-duration: 0.3s; 
    transition-duration: 0.3s; 
} 

.toggle-navg ul { 
    margin: 0; 
    padding: 0; 
    font-family: Open Sans; 
    list-style: none; 
    margin: 4em auto; 
    text-align: center; 
} 
.toggle-navg ul.hidden { 
    display: none; 
} 
.toggle-navg ul a { 
    -moz-transition-duration: 0.5s; 
    -o-transition-duration: 0.5s; 
    -webkit-transition-duration: 0.5s; 
    transition-duration: 0.5s; 
    text-decoration: none; 
    color: black; 
    font-size: 3em; 
    line-height: 1.5; 
    width: 100%; 
    display: block; 
} 
.toggle-navg ul a:hover { 
    background-color: rgba(0, 0, 0, 0.8); 
} 

.menu-section.on { 
    z-index: 10; 
    width: 100%; 
    height: 100%; 
    display: block; 
    background-color: rgba(0, 0, 0, 0.8); 
    position: absolute; 
    opacity: 0.7; 
} 



.menu-toggle { 
    left: 85%; 
    } 
+1

Покажите нам также * оказанные HTML *. Возможно, ваше меню будет * пустым *, и в этом случае ничего не будет видно, и решение состоит в том, чтобы обеспечить, чтобы ваше меню было построено и что ваш 'theme_location' соответствует. –

+0

вы можете проверить элемент, HTML пришел или нет – Samyappa

ответ

0

ул Класс: .toggle-navg ul.hidden скрыть меню, попробуйте удалить этот класс:

.toggle-navg ul.hidden { 
    display: none; 
} 
+0

Я пробовал это, все еще не работаю. этот класс скрывает меню, пока я не нажму кнопку – Jasmina

0

Вы пытаетесь добавить подменю? Под этим я подразумеваю меню внутри элемента li?

Этот код:

<ul role="navigation" class="hidden"> 
    <li> <?php wp_nav_menu(array('theme_location' => 'extra-menu', 'container_class' => 'my_extra_menu_class')); ?></li> 
</ul> 

Даст вам что-то вроде:

<ul role="navigation" class="hidden"> 
    <li> 
    <ul> 
     <li>Item 1</li> 
     <li>Item 2 </li> 
    </ul> 
    </li> 
</ul> 

Так возможно, что меню ребенка прячась?

Попробуйте запустить wp_nav_menu вне меню, чтобы узнать, отображается ли ваше меню, или используйте Inspect Element/Dev Tools/View Source, чтобы проверить, действительно ли HTML выводится вашими аргументами wp_nav_menu.

Вам также не хватает аргумента «меню» для wp_nav_menu().

Попробуйте вывести ваше меню как автономный вместо указанного выше (предполагается, что ваше имя меню является «экстра-меню», если нет - отрегулировать в соответствии с):

wp_nav_menu(array(
     'menu' => 'extra-menu', 
     'theme_location' => 'extra-menu', 
     'menu_class' => 'hidden' 
    );