Php Wordpress自定义程序选项工作不正常

Php Wordpress自定义程序选项工作不正常,php,wordpress,Php,Wordpress,我创建了一个Wordpress自定义选项来显示面包屑。无论设置为什么,它总是显示。如果设置为“无”,则不应显示 Functions.php /* MAIN SETTINGS - Breadcrumb Setting */ $wp_customize->add_setting('swag_main_breadcrumb_top_homepage', array( 'default' => 'main-breadcrumb-top-homepage-none' )); $wp_c

我创建了一个Wordpress自定义选项来显示面包屑。无论设置为什么,它总是显示。如果设置为“无”,则不应显示

Functions.php

/* MAIN SETTINGS - Breadcrumb Setting */
$wp_customize->add_setting('swag_main_breadcrumb_top_homepage', array(
    'default' => 'main-breadcrumb-top-homepage-none'
));
$wp_customize->add_control('swag_main_breadcrumb_top_homepage', array(
    'label' => 'Top Breadcrumb On Homepage',
    'section' => 'swag_main_design_section',
    'active_callback'  => 'main_show_breadcrumb_settings_callback',
    'type' => 'select',
    'choices' => array(
        'main-breadcrumb-top-homepage-none' => __('None'),
        'main-breadcrumb-top-homepage-design-1' => __('Design 1'),
        'main-breadcrumb-top-homepage-design-2' => __('Design 2'),
        'main-breadcrumb-top-homepage-design-3' => __('Design 3'),
    )
));

/* MAIN SETTINGS - Breadcrumb Setting */
$wp_customize->add_setting('swag_main_breadcrumb_top_otherpage', array(
    'default' => 'main-breadcrumb-top-otherpage-none'
));
$wp_customize->add_control('swag_main_breadcrumb_top_otherpage', array(
    'label' => 'Top Breadcrumb On Otherpage',
    'section' => 'swag_main_design_section',
    'active_callback'  => 'main_show_breadcrumb_settings_callback',
    'type' => 'select',
    'choices' => array(
        'main-breadcrumb-top-otherpage-none' => __('None'),
        'main-breadcrumb-top-otherpage-design-1' => __('Design 1'),
        'main-breadcrumb-top-otherpage-design-2' => __('Design 2'),
        'main-breadcrumb-top-otherpage-design-3' => __('Design 3'),
    )
));
Header.php

$swag_main_breadcrumb_top_homepage = get_theme_mod('$swag_main_breadcrumb_top_homepage');
if (isset($swag_main_breadcrumb_top_homepage) && $swag_main_breadcrumb_top_homepage=='') {
$swag_main_breadcrumb_top_homepage ='';
}

$swag_main_breadcrumb_top_otherpage = get_theme_mod('$swag_main_breadcrumb_top_otherpage');
if (isset($swag_main_breadcrumb_top_otherpage) && $swag_main_breadcrumb_top_otherpage=='') {
$swag_main_breadcrumb_top_otherpage ='';
}

<?php
        if (is_front_page()) {
                if (isset($swag_main_breadcrumb_top_homepage) && $swag_main_breadcrumb_top_homepage !='main-breadcrumb-top-homepage-none') {
                        swag_breadcrumb();
                }
        } else {
                if (isset($swag_main_breadcrumb_top_otherpage) && $swag_main_breadcrumb_top_otherpage !='main-breadcrumb-top-otherpage-none') {
                        swag_breadcrumb();
                }
        }
?>

我做错了什么以及如何修复它?

看起来您的代码中有打字错误。比如说

获取主题模板“$swag\u main\u breadcrumb\u top\u otherpage”

应该是


get_theme_mod'swag_main_breadcrumb_top_otherpage.

我认为get_theme_mod'$swag_main_breadcrumb_top_homepage'应该是get_theme_mod'swag_main_breadcrumb_top_homepage'。因为$it可能无法正常工作。@DhananjayKyada抛出一个致命错误如果我这样做,它不应该抛出一个致命错误,因为我们需要在get_theme_mod中传递设置名称。如果抛出异常,请粘贴在这里。@DhananjayKyada您的权利,我的错误。我把它从错误的位子上取下来了。但我没修好。对我来说,一切看起来都是对的,但仍然不起作用。@DhananjayKyada我发现了一些我在写这篇文章后犯的错误。在您的帮助下,这个问题得到了解决。把这个作为你的答案,我会选择它。