致命错误:无法重新声明GET_HEADER_IMAGE()(先前在

时间:2019-06-20 作者:Murat Deniz

使用该代码<img src="<?php echo esc_url( get_header_image() ); ?>" alt="<?php echo esc_attr( get_bloginfo( \'title\' ) ) ); ?>" /> , 我创建了一个函数。像这样的php

 <?php 

function get_header_image() { 
    $url = get_theme_mod( \'header_image\', get_theme_support( \'custom-header\', \'default-image\' ) ); 

    if ( \'remove-header\' == $url ) { 
        return false; 
    } 

    if ( is_random_header_image() ) { 
        $url = get_random_header_image(); 
    } 
} 
    ?>
但它显示了错误:

Fatal error: Cannot redeclare get_header_image() (previously declared in C:\\Program Files (x86)\\EasyPHP-Devserver-17\\eds-www\\wordpress\\wp-includes\\theme.php:1058) in C:\\Program Files (x86)\\EasyPHP-Devserver-17\\eds-www\\wordpress\\wp-content\\themes\\html5blank-stable1\\html5blank-stable\\functions.php on line 13
那我该怎么解决呢?

1 个回复
SO网友:Krzysiek Dróżdż

在这种情况下,错误信息非常清楚。

不能有两个同名函数。

WordPress已调用函数get_header_image, 因此,不能使用此名称调用自定义函数。

这就是为什么在主题中声明的函数中添加前缀是一个好主意。所以取而代之的是get_header_image 调用自定义函数MYTHEME_get_header_image (当然要更换MYTHEME 主题名称)。

相关推荐