2017-10-09 4 views
0

내 워드 프레스 wp_nav_menu의 li 요소에 클래스를 추가하려고합니다. 나는 여기에 몇 가지 대답을 따라 갔지만 그 부분 만 작동시킬 수 있습니다. 그래서 내 탐색 메뉴를 들면, 내가>wp_nav_menu의 특정 li 요소에 클래스를 추가하는 방법

functions.php에게이>

//REGISTER NAVIGATION MENU 
function smtg_menus() { 
    register_nav_menus(
    array(
     'header-menu' => __('Header Menu'), 
     'footer-menu' => __('Footer Menu') 
    ) 
); 
} 
add_action('init', 'smtg_menus'); 

이 코드 범주에 드롭 다운 메뉴를 탐색 - 링크 - 드롭 다운 클래스를 추가합니다.

function my_nav_menu_submenu_css_class($classes) { 
    $classes[] = 'nav-links-dropdown'; 
    return $classes; 
} 
add_filter('nav_menu_submenu_css_class', 'my_nav_menu_submenu_css_class'); 

Header.php>

$args = array(
    'theme_location' => 'header-menu', 
    'container'  => 'nav', 
    'container_class' => '', 
    'container_id' => '', 
    'menu_class'  => '', 
    'menu_id'   => '', 
    'fallback_cb'  => false); 
wp_nav_menu($args); 

I가 드롭 일명 하위 메뉴를 갖는 리튬 원소의 하나로, 내 주요 네비게이션 4 개 리튬 원소의 합계가있다.

드롭 다운 메뉴를 실행하기 위해 드롭 다운이있는 li에 클래스를 추가하는 방법을 알아낼 수 없습니다. 페이지 소스를 보면

, 내가 참조> 두 번째 LI 요소에

<!-- START NAV INSIDE NAV BAR --> 
<nav class="menu-header-menu-container"> 
    <ul id="menu-header-menu" class=""> 
     <li><a href="#">Home</a></li> 
     <li><a href="#">Categories</a> 
      <ul class="sub-menu nav-links-dropdown"> 
       <li><a href="#">Cat1</a></li> 
       <li><a href="#">cat2</a></li> 
       <li><a href="#">cat3</a></li> 
       <li><a href="#">cat4</a></li> 
       <li><a href="#">cat5</a></li> 
       <li><a href="#">cat6</a></li> 
      </ul> 
     </li> 
     <li><a href="#">Page 3</a></li> 
     <li><a href="#">Page 4</a></li> 
    </ul> 
</nav> 

- 나는 드롭 다운 메뉴를 표시하기 위해 여기에 클래스 고양이 - 리튬 드롭 다운을 추가해야합니다. php 어디서나이 작업을 수행하는 방법을 알아낼 수 없습니다.

지금 제 2 요소에 cats-li-dropdown 클래스를 추가하기 위해 jquery를 사용하고 있습니다.

$('nav li:nth-child(2)').addClass('cats-li-dropdown'); 

jquery를 사용하여 두 번째 li 요소에 클래스를 추가하지 않으려면 어떻게해야합니까?

이미 메뉴 옵션에서 wordpress에 클래스를 추가하려고했지만 페이지 소스를 볼 때 여전히 공백으로 나옵니다.

이렇게해도 li 요소에는 아무 것도 추가되지 않았습니다. 다른 아이디어?

문제가 표시되지 않는 사용자 정의 CSS 클래스에 대한

Class entered into the menu options in wordpress admin - doesn't add it on page

+0

당신은 당신이 작업하고있는 워드 프레스 메뉴 페이지를해야합니까? 그것은 CSS 클래스가 당신을 위해 작동하지 않는 것이 이상하게 보입니다. 또한 wp_head() 및 wp_footer()를 WordPress 템플릿에 포함 시켰습니까? – Vincent1989

+0

지금은 4 페이지가 있습니다. 집. 카테고리. 정보. 접촉. 내 header.php에는 wp_head가 있고 footer.php에는 wp_footer가 있습니다. 대기열에 추가 된 스크립트 및 스타일이 내 functions.php 파일에서 100 % 작동합니다. 그림에 표시된 것처럼 페이지의 CSS 클래스를 추가 할 때 실제로 생성 된 코드에 CSS 클래스를 추가하지 않는 이유는 무엇입니까? 흠. – grimesd

+0

WordPress 버전의 다른 고약한 결함 일 수 있습니다. 어쨌든 하위 CSS https://stackoverflow.com/questions/5034826/wp-nav-menu-change-sub-menu-class-name에 맞춤 CSS를 추가하는 방법을 찾았습니다. – Vincent1989

답변

0

, menu 매개 변수를 추가하려고 :

$args = array(
    'menu' => 'header-menu', 
    'theme_location' => 'header-menu', 
    'container'  => 'nav', 
    'container_class' => '', 
    'container_id' => '', 
    'menu_class'  => '', 
    'menu_id'   => '', 
    'fallback_cb'  => false); 
wp_nav_menu($args); 
+0

args에 메뉴> 위치를 추가하려고 시도했으며 페이지 소스를 볼 때 메뉴 클래스 옵션에 입력 한 클래스를 추가하지 않았습니다. wp-admin에서. 지금은 사용 중입니다. nav li : nth-child (2) : 가리 키기 .nav-links-dropdown { \t display : block; } – grimesd