PHP Error in Wordpress Theme

时间:2019-02-22 作者:Trenton Moore

所以我对wordpress的AWS多站点托管有一些问题。每隔几周,我的整个网站实例就会下降。第一次发生时,我收到了500个错误,所以我只是重新启动了实例&;一切都很好。但第二次没有出现500个错误,虽然重新启动工作正常,但理想情况下,我希望完全解决这个问题,所以我深入挖掘了一些&;查看我的php错误日志;找到此项:

“PHP警告:my\\u menu\\u walker::start\\u el(&;$output,$item,$depth,$args)的声明应与第61行{filepath}中的walker\\u Nav\\u menu::start\\u el(&;$output,$item,$depth=0,$args=Array,$id=0)兼容”

本质上,我的一个托管网站的主题中有一行代码存在某种问题,但由于它不是我创建的主题或类似的主题,我不知道如何修复它。这是有问题的全班同学。第61行是该类结束}之前的最后一行。

class my_menu_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        ) .\'"\' : \'\';
          $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 .= $description.$args->link_after;
            $item_output .= $args->link_before.apply_filters( \'the_title\', $item->title, $item->ID );
            $item_output .= \'</a>\';
            $item_output .= $args->after;
            $output .= apply_filters( \'walker_nav_menu_start_el\', $item_output, $item, $depth, $args );
    }
}
通常情况下,我只会将此类问题发送给主题制作人的支持,但此主题太旧了,我无法在不支付大笔款项的情况下获得主题制作人的支持,因此如果我不这样做就可以解决问题,那将是理想的。

1 个回复
SO网友:Qaisar Feroz

重新填充此

function start_el(&$output, $item, $depth, $args) { ....
用这个

function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) { ....
我希望这能奏效。

相关推荐

PHP问题:如何组合语法?

有人能告诉我PHP代码中的错误在哪里吗?我的PHP知识非常初级,尽管我已经用http://php.net/manual/de/language.operators.logical.php :-D“翻译”的意思应该是:单个帖子->显示阅读时间:是自定义帖子类型“wpdmpro”->显示阅读时间:否阅读时间功能本身起作用,但与CPT的组合方式不同。在我的代码中,阅读时间不显示——无论是在CPT中,还是在正常的单个帖子中:// Reading Time if (function_