403Webshell
Server IP : 14.225.204.176  /  Your IP : 216.73.216.169
Web Server : nginx/1.24.0
System : Linux nodejs-ybgk 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64
User : root ( 0)
PHP Version : 8.1.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/html/php/langngon.com/wp-content/themes/langngon/lib/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/php/langngon.com/wp-content/themes/langngon/lib/nav.php
<?php
/**
 * Cleaner walker for wp_nav_menu()
 *
 * Walker_Nav_Menu (WordPress default) example output:
 *   <li id="menu-item-8" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-8"><a href="/">Home</a></li>
 *   <li id="menu-item-9" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-9"><a href="/sample-page/">Sample Page</a></l
 *
 * Roots_Nav_Walker example output:
 *   <li class="menu-home"><a href="/">Home</a></li>
 *   <li class="menu-sample-page"><a href="/sample-page/">Sample Page</a></li>
 */

class Roots_Nav_Walker extends Walker_Nav_Menu {
  
	function check_current($classes) {
		return preg_match('/(current[-_])|active|dropdown/', $classes);
	}

	function start_lvl( &$output, $depth = 0, $args = array() ) {
	  	$indent = str_repeat( "\t", $depth );
		// $output .= "<div class='nav-sub'>";
		$output .= "\n$indent<ul class=\"dropdown-menu\">\n";
	}  

	function display_element( $element, &$children_elements, $max_depth, $depth, $args, &$output ) {
	    if ( ! $element )
	        return;

	    $id_field = $this->db_fields['id'];

	    // Display this element.
	    if ( is_object( $args[0] ) )
	       $args[0]->has_children = ! empty( $children_elements[ $element->$id_field ] );

	    if($children_elements){
	      $custom_has_children = true;
	    }

	    parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output );
	}
}

/**
 * Remove the id="" on nav menu items
 * Return 'menu-slug' for nav menu classes
 */
function roots_nav_menu_css_class($classes, $item) {
  $slug = sanitize_title($item->title);
  $classes = preg_replace('/(current(-menu-|[-_]page[-_])(item|parent|ancestor))/', 'active', $classes);
  $classes = preg_replace('/^((menu|page)[-_\w+]+)+/', '', $classes);

  $classes[] = 'menu-' . $slug . ' dropdown';

  $classes = array_unique($classes);

  return array_filter($classes, 'is_element_empty');
}
add_filter('nav_menu_css_class', 'roots_nav_menu_css_class', 10, 2);
add_filter('nav_menu_item_id', '__return_null');

/**
 * Clean up wp_nav_menu_args
 *
 * Remove the container
 * Use Roots_Nav_Walker() by default
 */
function roots_nav_menu_args($args = '') {
  $roots_nav_menu_args['container'] = false;

  if (!$args['items_wrap']) {
    $roots_nav_menu_args['items_wrap'] = '<ul class="%2$s">%3$s</ul>';
  }

  if (!$args['depth']) {
    $roots_nav_menu_args['depth'] = 2;
  }

  if (!$args['walker']) {
    $roots_nav_menu_args['walker'] = new Roots_Nav_Walker();
  }

  return array_merge($args, $roots_nav_menu_args);
}
add_filter('wp_nav_menu_args', 'roots_nav_menu_args');

/**
 * 
 *
 * Add class active to sub menu
 * 
 */
add_filter( 'nav_menu_link_attributes', 'my_secondary_menu_classes', 10, 3 );
function my_secondary_menu_classes( $atts, $item, $args ) {
    $slug = sanitize_title($item->title);


	if ( empty($item->menu_item_parent) && $args->has_children ) {
		$atts['data-toggle'] = 'dropdown';
		$atts['class'] = 'dropdown-toggle';
  	}

    return $atts;
}
// add_filter( 'nav_menu_css_class', 'my_secondary_menu_classes', 10, 3 ); 

Youez - 2016 - github.com/yon3zu
LinuXploit