带有导航菜单遍历器代码的PHP警告

时间:2019-03-29 作者:user3822603

[UTC]PHP警告:描述声明\\u walker::start\\u el(&;$output,$item,$depth,$args)应与walker\\u Nav\\u菜单::start\\u el(&;$output,$item,$depth=0,$args=Array,$id=0)in/home/inach/public\\u html/inach/wp content/themes/antartica14/functions兼容。php第0行【2019年3月29日14:34:11 UTC】php警告:在/home/inach/public\\u html/inach/wp includes/nav菜单中,字符串偏移量“output\\u key”非法。php在线604

中的代码functions.php

//menu
class description_walker extends Walker_Nav_Menu
{
      function start_el(&$output, $item, $depth, $args)
      {
           global $wp_query;
           $indent = ( $depth ) ? str_repeat( "\\t", $depth ) : \'\';

           $class_names = $value = \'\';

           $classes = empty( $item->classes ) ? array() : (array) $item->classes;

           $class_names = join( \' \', apply_filters( \'nav_menu_css_class\', array_filter( $classes ), $item ) );
           $class_names = \' class="\'. esc_attr( $class_names ) . \'"\';

           $output .= $indent . \'<li id="menu-item-\'. $item->ID . \'"\' . $value . $class_names .\'>\';

           $attributes  = ! empty( $item->attr_title ) ? \' title="\'  . esc_attr( $item->attr_title ) .\'"\' : \'\';
           $attributes .= ! empty( $item->target )     ? \' target="\' . esc_attr( $item->target     ) .\'"\' : \'\';
           $attributes .= ! empty( $item->xfn )        ? \' rel="\'    . esc_attr( $item->xfn        ) .\'"\' : \'\';
           $attributes .= ! empty( $item->url )        ? \' href="\'   . esc_attr( $item->url        ) .\'"\' : \'\';

           $prepend = \'<strong>\';
           $append = \'</strong>\';
           $description  = ! empty( $item->description ) ? \'<span>\'.esc_attr( $item->description ).\'</span>\' : \'\';

           if($depth != 0)
           {
                     $description = $append = $prepend = "";
           }

            $item_output = $args->before;
            $item_output .= \'<a\'. $attributes .\'>\';
            $item_output .= $args->link_before .$prepend.apply_filters( \'the_title\', $item->title, $item->ID ).$append;
            $item_output .= $description.$args->link_after;
            $item_output .= \'</a>\';
            $item_output .= $args->after;

            $output .= apply_filters( \'walker_nav_menu_start_el\', $item_output, $item, $depth, $args );
            }
}
register_nav_menus( array (
\'primary\' => __( \'Navegacion Principal\', \'tu_theme\' ),
\'secondary\'=>__( \'Navegacion Secundaria\', \'tu_theme\' )));
登录页面为空,我无法访问仪表板。

1 个回复
SO网友:MikeNGarrett

更改您的start_el 参数:

function start_el(&$output, $item, $depth = 0, $args = Array, $id = 0)
WordPress不久前更新了这些。它们需要与父类函数的期望相匹配,以使其正常工作。