高级分类排除器-未定义变量错误



尝试使用高级类别排除器插件,一切都很好,除了在我的404页面上,我得到所有这些"未定义的变量";第446行错误

446行读取return $filter;

在完整上下文中:

function ace_get_section()
{
    global $wp_query, $ace_targets;
    
    if (is_array($ace_targets))
    {
        foreach ($ace_targets as $key=>$val) 
        {
          if (!empty($wp_query->$key) && $wp_query->$key == 1) $filter = $key;              
        }
    }
    return $filter;
}

插件页面http://wordpress.org/extend/plugins/advanced-category-excluder/

有谁知道如何解决这个问题吗?

$filter变量仅在满足某些条件时才定义,而当条件不满足时,则按通知规定未定义。

所以试着在函数的开头添加$filter="";,像这样:

function ace_get_section()
{
    global $wp_query, $ace_targets;
    $filter="";
    if (is_array($ace_targets))
    {
        foreach ($ace_targets as $key=>$val) 
        {
          if (!empty($wp_query->$key) && $wp_query->$key == 1) $filter = $key;              
        }
    }
    return $filter;
}

最新更新