_wrap_menu_item[$this->_current_item->ID] ) ) { $output .= ''; } } public function start_el( &$output, $item, $depth = 0, $args = array(), $current_page = 0 ) { global $luxe; $this->_current_item = $item; $classes = array( 'page_item', 'page-item-' . $item->ID, 'gl' ); if( isset( $args['pages_with_children'][$item->ID] ) ) { $classes[] = 'page_item_has_children'; } if( !empty( $current_page ) ) { $_current_page = get_post( $current_page ); if( $_current_page && in_array( $item->ID, $_current_page->ancestors, true ) ) { $classes[] = 'current_page_ancestor'; } if( $item->ID == $current_page ) { $classes[] = 'current_page_item'; } elseif( $_current_page && $item->ID === $_current_page->post_parent ) { $classes[] = 'current_page_parent'; } } elseif( get_option( 'page_for_posts' ) == $item->ID ) { $classes[] = 'current_page_parent'; } if( (int)$item->post_parent === 0 ) { $page_template = get_post_meta( $item->ID, '_wp_page_template', true ); if( !empty( $page_template ) && stripos( $page_template, 'pages/wrapper-menu.php' ) !== false ) { if( !isset( $this->_wrap_menu_item[$item->ID] ) ) { $this->_wrap_menu_item[$item->ID] = $item->ID; } } } else { if( isset( $this->_wrap_menu_item[$item->post_parent] ) ) { $this->_wrap_menu_item[$item->ID] = $item->ID; } } $wrap_menu_page = ''; $class_names = ''; $item_output = ''; if( !empty( $this->_wrap_menu_item[$item->ID]) ) { $wrap_menu_page = ' data-child-id="' . $this->_wrap_menu_item[$item->ID] . '-1"'; } if( isset( $luxe['amp'] ) || ( !isset( $luxe['amp'] ) && !isset( $this->_wrap_menu_item[$item->post_parent] ) ) ) { if( !empty( $this->_wrap_menu_item[$item->ID] ) && (int)$item->post_parent === 0 ) { $classes[] = 'has-wrap-menu'; if( !isset( $luxe['amp'] ) && in_array( 'page_item_has_children', $classes, true ) ) { $classes = array_diff( $classes, ['page_item_has_children'] ); $classes = array_values( $classes ); } $item_output .= ''; if( isset( $luxe['amp'] ) ) { $item_output .= ''; } } else { $attributes = !empty( $item->ID ) ? ' href="' . esc_url( get_permalink( $item->ID ) ) .'"' : ''; $item_output .= ''; } $item_output .= $args['link_before'] . $item->post_title . $args['link_after'] . ''; if( !isset( $luxe['amp'] ) ) { if( !empty( $this->_wrap_menu_item[$item->ID] ) ) { $item_output .= ''; } } $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item ) ); $class_names = ' class="'. esc_attr( $class_names ) . '"'; $output .= ''; } } } endif; /*--------------------------------------------------------------------------- * wp_page_menu の代替関数 *---------------------------------------------------------------------------*/ if( function_exists('thk_page_menu') === false ): function thk_page_menu() { global $luxe, $_is; $show_home = false; $class_names = ''; if( !empty( $luxe['home_text'] ) ) { $show_home = $luxe['home_text']; } $wp_page_menu_args = array( 'echo' => false, 'depth' => 3, 'menu_class' => 'gc gnavi-container', //'container' => false, 'link_before' => '', 'link_after' => '', 'before' => '', 'show_home' => $show_home, 'walker' => new THK_Global_Page_Walker() ); $ret = str_replace( '
  • ', '
  • ', wp_page_menu( $wp_page_menu_args ) ); if( ( $_is['home'] === true && (int)get_option( 'page_on_front' ) === 0 ) || $_is['front_page'] === true ) { $class_names = 'current_page_item '; } $ret = str_replace( '