草木有本心 何求美人折
青灯 昆昆宋

← 回到码事

朱印与边款:给主题挂一枚设置

丙午年八月初十 · WordPress · 读过 6 次 · 教程

主题里的开关和文字,起初都写死在模板里。想换印章,得翻进 header.php;想换起始年份,又得找 footer.php。改得多了,自己都记不住动过哪里。

注册一枚设置

在 inc/customizer.php 里加一段,设置、控件、默认值一起交代清楚:

add_action( 'customize_register', function ( $wp_customize ) {
    $wp_customize->add_setting( 'qd_seal', array(
        'default'           => '青灯',
        'sanitize_callback' => 'sanitize_text_field',
    ) );

    $wp_customize->add_control( 'qd_seal', array(
        'label'   => '印章文字',
        'section' => 'qd_options',
    ) );
} );

模板里取值

模板端一句 get_theme_mod( 'qd_seal' ) 就够了。我把它包成 qd_seal(),再配一个兜底默认值,面板里没填也不至于开天窗:

function qd_seal() {
    return (string) get_theme_mod( 'qd_seal', '青灯' );
}

注册与取值分开,自定义面板成了唯一入口。日后回头看某处文字从哪里来,翻一眼设置面板便知,不必再逐个文件追。

· 终 ·