定制器图像-选取器预览不起作用

时间:2017-05-04 作者:Friedrich Siever

对不起,我的英语。我试图在Customizer中实现一个图像选择器,以便在首页上选择和显示css背景图像。php。基础it在前端按预期工作。但是我无法在customizer中运行预览。更改的图像仅在F5刷新后显示。

我所做的:函数。php

$wp_customize->add_setting(\'startGalleryImg1\', array(
    \'default\' => get_stylesheet_directory_uri() . \'/images/assets/default.jpg\',
    \'transport\' => \'postMessage\',
    \'sanitize_callback\' => \'esc_url_raw\',

));

$wp_customize->add_control(
   new WP_Customize_Image_Control(
       $wp_customize,
       \'startGalleryImg1\',
       array(
           \'label\'      => __( \'1st Start Gallery Img\', \'theme_name\' ),
            \'description\'      => __( \'Choose first Start Gallery Img\', \'theme_name\' ),
           \'section\'    => \'bloook_theme_section\',
           \'settings\'   => \'startGalleryImg1\',

       )
   )
)
我的模板:

<a class="item item1" href="#">
            <div class="item-bg" style="background-image: url(\'<?php echo get_theme_mod(\'startGalleryImg1\') ?>\')">
            </div>
     <div class="item-content">
        <h3>Demos</h3>
        <p>Web, Video, Musik</p>
     </div>
我的自定义程序。js(适用于其他字段(textarea…)

(function ($) {

wp.customize(\'startGalleryImg1\', function (value) {
    value.bind(function (to) {
        $(\'.home .item1 .item-bg\').css(\'background-image\', \'url( \'+ to +\')\');
    });
});

})(jQuery);
我想知道是否有专家可以帮助我。非常感谢并致以亲切的问候

1 个回复
SO网友:Friedrich Siever

上面的代码对我来说很好。我把它放在这里,因为可能有人需要它,或者有人建议用更好的方式来做。我的问题是js队列加载了一个旧的js文件。

相关推荐

JavaScript in a PHP plugin

我正在编写一个插件(在PHP中),它输出array.生成的数组应该是某个JavaScript文件的输入,该文件根据数组输出图表(.png图像)。考虑到这一点,我应该将变量从PHP插件传递给JavaScript(如图所示here).我想知道使用插件的过程是否与普通PHP文件不同。。。JS图表应根据用户操作显示。简而言之:如何调用JS文件,通过普通插件向其传递变量?