致命错误:在index.php中调用未定义功能的add_filter()在WordPress的(Fa

2019-10-30 06:06发布

我想通过用户的浏览器动态地改变我的wordpress主题。 所以,我发现在网络上此代码,并把它添加到我的index.php文件

add_filter('template', 'switch_theme_by_browser');
add_filter('stylesheet', 'switch_theme_by_browser');

function switch_theme_by_browser($theme) {

    $browser = $_SERVER['HTTP_USER_AGENT'];

    if(preg_match('/MSIE/i',$browser) && !preg_match('/Opera/i',$browser))
    {
        $theme = "twentyeleven";
    }
    elseif(preg_match('/Firefox/i',$browser))
    {
        $theme = "twentyten";
    }
    elseif(preg_match('/Chrome/i',$browser))
    {
        $theme = "Boxoffice";
    }

    return $theme;
}

之后,它显示我“致命错误:在/home/xxx/public_html/domain.com/index.php调用未定义功能的add_filter()第17行”

正如我undertand了“的add_filter()”应该是内置在WordPress的功能。

Answer 1:

正如道森说,这需要你去/wp-content/themes/[theme]/functions.php文件。



Answer 2:

在WordPress根目录下,把require( ABSPATH . WPINC . '/plugin.php' ); 之前require( ABSPATH . WPINC . '/functions.php' ); 在文件的wp-settings.php中。 我验证这个解决方案http://wordpress.org/support/topic/fatal-error-call-to-undefined-function-add_filter 。



文章来源: Fatal error: Call to undefined function add_filter() in index.php in Wordpress