如何将PHP变量传递给WordPress中的JavaScript函数?

如何将PHP变量传递给WordPress中的JavaScript函数?,php,jquery,wordpress,Php,Jquery,Wordpress,我试图将一个元素ID值传递给add_action(),它会在页脚中设置JS for Slick滑块 我得到的结果是: $("#").slick({... 但我想要的是: $("#rtt_grid_carrousel_5bd9bbeabd625").slick({... 这是我目前的代码: $uniqid = uniqid('rtt_grid_carrousel_'); js_rtt_grid_carrousel( $uniqid ); function js_rtt_grid_carro

我试图将一个元素ID值传递给
add_action()
,它会在页脚中设置JS for Slick滑块

我得到的结果是:

$("#").slick({...
但我想要的是:

$("#rtt_grid_carrousel_5bd9bbeabd625").slick({...
这是我目前的代码:

$uniqid = uniqid('rtt_grid_carrousel_');
js_rtt_grid_carrousel( $uniqid );


function js_rtt_grid_carrousel( $uniqid ) {
    add_action('wp_footer', function( $uniqid ) {
        ?>
            <script id="rtt_grid_carrousel" type="text/javascript">
                $(document).ready(function () {
                    $("#<?php echo $uniqid ?>").slick({
                        dots: false,
                        arrows: false,
                        infinite: false,
                        slidesToShow: 1,
                        slidesToScroll: 1,
                        draggable: false,
                        vertical: false,
                        centerMode: false,
                        adaptiveHeight: true,
                        // fade: true,
                        // cssEase: "linear",
                    });


                });
            </script>
        <?php
    });
}
但不是

add_action('wp_footer', function(){...}); inside that function
啊!!我找到了!:)你们给了我一些想法。


我将不得不更多地研究“使用”以了解这是什么,但它是有效的!:)谢谢大家

看起来这应该行得通,但我对PHP不是很有经验。也许可以尝试在多个位置将变量输出到页面,看看它是否始终正确。在这一行中$(“#”).slick({Put$(“#”).slick({您不应该混合使用PHP和JS-这是一种导致意外行为的糟糕做法。使用data-Attributes创建一个隐藏的输入或隐藏的DOM元素或者更好的是,我看到没有条件语句,那么为什么不使用if/else如果$uniqid是有效的-如果是,则添加一个在.JS中灵活定位的泛型类file@wadleo无效-关闭PHP允许s HTML-因此操作代码很好。稍后,我可以用$args替换$uniqid以在数组()中传递更多设置。
add_action('wp_footer', function(){...}); inside that function
$uniqid = uniqid('rtt_grid_carrousel_');
js_rtt_grid_carrousel( $uniqid );


function js_rtt_grid_carrousel( $uniqid ) {
    add_action('wp_footer', function() use ( $uniqid ) {
        ?>
            <script id="rtt_grid_carrousel" type="text/javascript">
                $(document).ready(function () {
                    $("#<?php echo $uniqid ?>").slick({
                        dots: false,
                        arrows: false,
                        infinite: false,
                        slidesToShow: 1,
                        slidesToScroll: 1,
                        draggable: false,
                        vertical: false,
                        centerMode: false,
                        adaptiveHeight: true,
                        // fade: true,
                        // cssEase: "linear",
                    });


                });
            </script>
        <?php
    });
}
add_action('wp_footer', function() use ( $uniqid ) {...});