在wordpress中向自定义程序添加设置时出现致命错误

时间:2014-07-09 15:03:19

标签: wordpress

我正在尝试在Wordpress自定义程序中添加额外的设置。您可以在网站标题中添加额外的设置吗?标语部分或者您是否必须创建自己的部分?这是我目前在functions.php文件中的代码:

function mytheme_customize_register( $wp_customize )
{
    $wp_customize->add_control(
        new WP_Customize_Control(
            $wp_customize,
            'your_setting_id',
            array(
                'label'          => __( 'Your Label Name', 'theme_name' ),
                'section'        => 'title_tagline',
                'settings'       => 'your_setting_id',
                'type'           => 'text'
            )
        )
    );
}
add_action( 'customize_register', 'mytheme_customize_register' );

如果我尝试转到管理区域中的自定义主题页面,但我收到以下错误:

Fatal error: Call to a member function check_capabilities() on a non-object in C:\xampp\htdocs\one-gas\wp-includes\class-wp-customize-control.php on line 161

2 个答案:

答案 0 :(得分:0)

是的,您可以添加到标题和标语部分。尝试使用此代码:

$wp_customize->add_control(
    new WP_Customize_Control(
        $wp_customize,
        'your_setting_id',
        array(
            'label'          => __( 'Your Label Name', 'theme_name' ),
            'section'        => 'title_tagline',
            'settings'       => 'your_setting_id',
            'type'           => 'text'
            )
        )
    )
);

在WordPress Codex上阅读有关Theme Customization API的更多信息。

答案 1 :(得分:0)

我最终修复了它,因为我必须首先定义一个设置,所以这是工作代码:

function mytheme_customize_register( $wp_customize )
{
    $wp_customize->add_setting('subtagline', array(
        'default' => 0,
        'type' => 'option'
    ));

    $wp_customize->add_control(
        new WP_Customize_Control(
            $wp_customize,
            'subtagline',
            array(
                'label'          => __( 'Sub Tagline', 'One Gas' ),
                'section'        => 'title_tagline',
                'settings'       => 'subtagline',
                'type'           => 'text'
            )
        )
    );
}
add_action( 'customize_register', 'mytheme_customize_register' );