• 18-09-2016, 10:36:43
    #1
    Merhabalar. Biliyorum başlık biraz ilginç oldu. Yapmaya çalıştığım şey tam olarak şuradaki http://prntscr.com/cjbxby iconları kaldırmak. Alt menüsü olmayan menü bileşenlerinde de icon görünüyor ve bu yanlış. Fonksiyon kodlarını bir türlü doğru düzenleyemedim.

    HTML düzeni: http://prntscr.com/cjbz00

    İcon font olarak eklenmiştir.

    Not: Mantık olarak submenü olan ana menüde <i class="i-menu"></i> kodunun görünmemesi lazım.

    function has_children( $pid ) {
        $children = get_pages( "child_of={$pid}" );
        return ( $children );
    }
    function bt_ana_menu_duzeni( $theme_location ) {
        if ( ($theme_location) && ($locations = get_nav_menu_locations()) && isset($locations[$theme_location]) ) {
            $menu = get_term( $locations[$theme_location], 'nav_menu' );
            $menu_items = wp_get_nav_menu_items($menu->term_id);
            $menu_list .= '<ul class="ic-ana-menu">' ."\n";
     
            $count = 0;
            $submenu = false;
             
            foreach( $menu_items as $menu_item ) {
                 
                $link = $menu_item->url;
                $title = $menu_item->title;
                
                if ( !$menu_item->menu_item_parent ) {
                    $parent_id = $menu_item->ID;
                    $menu_list .= '<li class="hıd-'.$parent_id.'">' ."\n";
                    $menu_list .= '<a href="'.$link.'">'.$title.'<i class="i-menu"></i></a>' ."\n";
                    
                }
     
                if ( $parent_id == $menu_item->menu_item_parent ) {
     
                    if ( !$submenu ) {
                        $submenu = true;
                        $menu_list .= '<ul class="alt-menu">' ."\n";
                    }
     
                    $menu_list .= '<li class="ıd-'.$parent_id.'">' ."\n";
                    $menu_list .= '<a href="'.$link.'" class="menu-alt-baslik">'.$title.'</a>' ."\n";
                    $menu_list .= '</li>' ."\n";
                         
     
                    if ( $menu_items[ $count + 1 ]->menu_item_parent != $parent_id && $submenu ){
                        $menu_list .= '</ul>' ."\n";
                        $submenu = false;
                    }
     
                }
     
                if ( $menu_items[ $count + 1 ]->menu_item_parent != $parent_id ) { 
                    $menu_list .= '</li>' ."\n";      
                    $submenu = false;
                }
     
                $count++;
            }
             
            $menu_list .= '</ul>' ."\n";
            $menu_list .= '</nav>' ."\n";
     
        } else {
            $menu_list = '<!-- no menu defined in location "'.$theme_location.'" -->';
        }
        echo $menu_list;
    }
  • 18-09-2016, 11:59:37
    #2
    function has_children( $pid ) { 
        $children = get_pages( "child_of={$pid}" ); 
        return ( $children ); 
    } 
    function bt_ana_menu_duzeni( $theme_location ) { 
        if ( ($theme_location) && ($locations = get_nav_menu_locations()) && isset($locations[$theme_location]) ) { 
            $menu = get_term( $locations[$theme_location], 'nav_menu' ); 
            $menu_items = wp_get_nav_menu_items($menu->term_id); 
            $menu_list .= '<ul class="ic-ana-menu">' ."\n"; 
      
            $count = 0; 
            $submenu = false; 
              
            foreach( $menu_items as $menu_item ) { 
                  
                $link = $menu_item->url; 
                $title = $menu_item->title; 
                 
                if ( !$menu_item->menu_item_parent ) { 
                    $parent_id = $menu_item->ID; 
                    $menu_list .= '<li class="hıd-'.$parent_id.'">' ."\n"; 
                    $menu_list .= '<a href="'.$link.'">'.$title.'' ."\n"; 
                     
                } 
      
                if ( $parent_id == $menu_item->menu_item_parent ) { 
      
                    if ( !$submenu ) { 
                        $submenu = true; 
                        $menu_list .= '<i class="i-menu"></i></a><ul class="alt-menu">' ."\n"; 
                    } 
      
                    $menu_list .= '<li class="ıd-'.$parent_id.'">' ."\n"; 
                    $menu_list .= '<a href="'.$link.'" class="menu-alt-baslik">'.$title.'</a>' ."\n"; 
                    $menu_list .= '</li>' ."\n"; 
                          
      
                    if ( $menu_items[ $count + 1 ]->menu_item_parent != $parent_id && $submenu ){ 
                        $menu_list .= '</ul>' ."\n"; 
                        $submenu = false; 
                    } 
      
                } 
      
                if ( $menu_items[ $count + 1 ]->menu_item_parent != $parent_id ) {  
                    $menu_list .= '</a></li>' ."\n";       
                    $submenu = false; 
                } 
      
                $count++; 
            } 
              
            $menu_list .= '</ul>' ."\n"; 
            $menu_list .= '</nav>' ."\n"; 
      
        } else { 
            $menu_list = '<!-- no menu defined in location "'.$theme_location.'" -->'; 
        } 
        echo $menu_list; 
    }
    dener misiniz? Belki işe yarayabilir.
  • 18-09-2016, 22:20:22
    #3
    Çok teşekkür ederim, tam istediğim gibi oldu. http://prntscr.com/cjj3s4

    muhammedaksam adlı üyeden alıntı: mesajı görüntüle
    function has_children( $pid ) { 
        $children = get_pages( "child_of={$pid}" ); 
        return ( $children ); 
    } 
    function bt_ana_menu_duzeni( $theme_location ) { 
        if ( ($theme_location) && ($locations = get_nav_menu_locations()) && isset($locations[$theme_location]) ) { 
            $menu = get_term( $locations[$theme_location], 'nav_menu' ); 
            $menu_items = wp_get_nav_menu_items($menu->term_id); 
            $menu_list .= '<ul class="ic-ana-menu">' ."\n"; 
      
            $count = 0; 
            $submenu = false; 
              
            foreach( $menu_items as $menu_item ) { 
                  
                $link = $menu_item->url; 
                $title = $menu_item->title; 
                 
                if ( !$menu_item->menu_item_parent ) { 
                    $parent_id = $menu_item->ID; 
                    $menu_list .= '<li class="hıd-'.$parent_id.'">' ."\n"; 
                    $menu_list .= '<a href="'.$link.'">'.$title.'' ."\n"; 
                     
                } 
      
                if ( $parent_id == $menu_item->menu_item_parent ) { 
      
                    if ( !$submenu ) { 
                        $submenu = true; 
                        $menu_list .= '<i class="i-menu"></i></a><ul class="alt-menu">' ."\n"; 
                    } 
      
                    $menu_list .= '<li class="ıd-'.$parent_id.'">' ."\n"; 
                    $menu_list .= '<a href="'.$link.'" class="menu-alt-baslik">'.$title.'</a>' ."\n"; 
                    $menu_list .= '</li>' ."\n"; 
                          
      
                    if ( $menu_items[ $count + 1 ]->menu_item_parent != $parent_id && $submenu ){ 
                        $menu_list .= '</ul>' ."\n"; 
                        $submenu = false; 
                    } 
      
                } 
      
                if ( $menu_items[ $count + 1 ]->menu_item_parent != $parent_id ) {  
                    $menu_list .= '</a></li>' ."\n";       
                    $submenu = false; 
                } 
      
                $count++; 
            } 
              
            $menu_list .= '</ul>' ."\n"; 
            $menu_list .= '</nav>' ."\n"; 
      
        } else { 
            $menu_list = '<!-- no menu defined in location "'.$theme_location.'" -->'; 
        } 
        echo $menu_list; 
    }
    dener misiniz? Belki işe yarayabilir.
  • 18-09-2016, 22:26:21
    #4
    R10+ verebilirseniz sevinirim. Yardımcı olabildiysem ne mutlu.

    SkyGhostAir adlı üyeden alıntı: mesajı görüntüle
    Çok teşekkür ederim, tam istediğim gibi oldu. http://prntscr.com/cjj3s4