Wordpress自定义标题 - 错误

时间:2018-03-05 23:38:44

标签: php wordpress wordpress-theming

我有一个简单的问题。我正在制作Twentyseventeen主题的子主题,我试图覆盖custom_header代码但是我收到以下错误:

PHP Fatal error:  Cannot redeclare twentyseventeen_custom_header_setup() (previously declared in /Applications/MAMP/htdocs/wordpress/wp-content/themes/twentyseventeen/inc/custom-header.php:36) in /Applications/MAMP/htdocs/wordpress/wp-content/themes/twentyseventeen/inc/custom-header.php on line 52

我尝试重命名该功能,因此不会重新声明,但这并没有解决问题。到目前为止,我还没有为我的主题添加任何其他代码。我还模仿目录结构与父主题相同:

资产    的functions.php    INC       custom_header.php    的index.php    ...

以下是我目前的文件:

的functions.php

<?php

function twentyseventeenchild_enqueue_styles(){         $ parent_style ='parent-style';

    wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
    wp_enqueue_style( 'child-style',
    get_stylesheet_directory_uri() . '/style.css',
        array( $parent_style )
    );
}
add_action( 'wp_enqueue_scripts', 'twentyseventeenchild_enqueue_styles' );

/**
* Implement the Custom Header feature.
*/
require get_parent_theme_file_path( '/inc/custom-header.php' );
?>

custom_header.php

<?php

/ **  *自定义标头实现  *  * @link https://codex.wordpress.org/Custom_Headers  *  * @package WordPress  * @subpackage Twenty_Seventeen  * @since 1.0  * /

/ **  *设置WordPress核心自定义标题功能。  *  * @uses twentyseventeen_header_style()  * / function twentyseventeen_custom_header_setup(){

/**
 * Filter Twenty Seventeen custom-header support arguments.
 *
 * @since Twenty Seventeen 1.0
 *
 * @param array $args {
 *     An array of custom-header support arguments.
 *
 *     @type string $default-image          Default image of the header.
 *     @type string $default_text_color     Default color of the header text.
 *     @type int    $width                  Width in pixels of the custom header image. Default 954.
 *     @type int    $height                 Height in pixels of the custom header image. Default 1300.
 *     @type string $wp-head-callback       Callback function used to styles the header image and text
 *                                          displayed on the blog.
 *     @type string $flex-height            Flex support for height of header.
 * }
 */
add_theme_support( 'custom-header', apply_filters( 'twentyseventeen_custom_header_args', array(
    'default-image'      => get_parent_theme_file_uri( '/assets/images/header.jpg' ),
    'width'              => 2000,
    'height'             => 1200,
    'flex-height'        => true,
    'video'              => true,
    'wp-head-callback'   => 'twentyseventeen_header_style',
) ) );

register_default_headers( array(
    'default-image' => array(
        'url'           => '%s/assets/images/header.jpg',
        'thumbnail_url' => '%s/assets/images/header.jpg',
        'description'   => __( 'Default Header Image', 'twentyseventeen' ),
    ),
) );
}
add_action( 'after_setup_theme', 'twentyseventeen_custom_header_setup' );
?>

1 个答案:

答案 0 :(得分:1)

在我发布问题之后。我所要做的就是将此代码添加到我的functions.php

$custom_header_args = array(
    'default-image' => get_theme_file_uri( '/assets/images/header.jpg' ),
    'width' => 2000,
    'height' => 1200,
    'flex-height' => true,
    'video' => true,
);
add_theme_support('custom-header', $custom_header_args);