我目前正在创建一个Wordpress主题,我遇到了一个障碍。我正在使用主题自定义页面上传主徽标和移动徽标。那些标志应该在页面上使用。我得到了它的工作二十分钟,但他们停止工作。Wordpress自定义图像控制不工作
这里是function.php我定制寄存器功能:
function wpalpha_customize_register($wp_customize) {
$wp_customize->add_section('wpalpha_logo_section' , array(
'title' => __('Logos', 'wpalpha'),
'description' => __('Upload logos to replace the default site logos.'),
'panel' => 'design_settings',
'priority' => 10,
'capability' => 'edit_theme_options',
'theme_supports' => '',
));
$wp_customize->add_setting('wpalpha_desktop_logo', array(
'type' => 'theme_mod',
'capability' => 'edit_theme_options',
'theme_supports' => '',
'default' => get_template_directory_uri().'/img/header/shield_text.png',
'sanitize_callback' => '',
'sanitize_js_callback' => '',
'transport' => 'refresh',
));
$wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'wpalpha_desktop_logo', array(
'label' => __('Choose Logo', 'wpalpha'),
'section' => 'wpalpha_logo_section',
'settings' => 'wpalpha_desktop_logo',
'context' => 'wpalpha-desktop-logo',
)));
$wp_customize->add_setting('wpalpha_mobile_logo', array(
'type' => 'theme_mod',
'capability' => 'edit_theme_options',
'theme_supports' => '',
'default' => get_template_directory_uri().'/img/header/shield.png',
'sanitize_callback' => '',
'sanitize_js_callback' => '',
'transport' => 'refresh',
));
$wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'wpalpha_mobile_logo', array(
'label' => __('Choose Logo', 'wpalpha'),
'section' => 'wpalpha_logo_section',
'settings' => 'wpalpha_mobile_logo',
'context' => 'wpalpha-mobile-logo',
)));
}
add_action('customize_register', 'wpalpha_customize_register');
这里是哪里,我在header.php中使用它:
<a class="navbar-brand" href="<?php echo home_url(); ?>">
<?php if(get_theme_mod('wpalpha_desktop_logo') != ''): ?>
<img class="desktop dlp_logo" src="<?php echo esc_url(get_theme_mod('wpaplpha_desktop_logo')); ?>">
<?php endif; ?>
<?php if(get_theme_mod('wpalpha_mobile_logo') != ''): ?>
<img class="mobile dlp_logo" src="<?php echo esc_url(get_theme_mod('wpaplpha_mobile_logo')); ?>">
<?php endif; ?>
</a>
这是我的代码输出作为:
<img class="desktop dlp_logo" src="">
<img class="mobile dlp_logo" src="">
此图显示选项在自定义页面上工作,但我的徽标不再显示(左上角的小方块应该是标志):(显然,我不够好,因为这个网站发布了一张图片,所以你会按照这个链接...)
http://i.stack.imgur.com/C38O6.jpg
请帮忙! 感谢
更新#1:
我看起来像当我改变在WordPress的后台的网站的徽标我的数据库不再被更新。我忘记更新选项了吗?我认为这是建立在这些功能。
更新#2:
<?php echo var_dump(get_theme_mod('wpalpha_desktop_logo')); ?>
此的var_dump()返回 '字符串(82) “http://localhost:8888/wp-content/themes/adenicboy-alpha/img/header/shield_text.png”' 所以我真的很困惑,为什么这是不工作...
感谢您的注意。这只是一个副本和paiste错误,但。 – adenix