将jQuery脚本移动到WordPress页面模板中的页脚

时间:2019-04-26 13:23:18

标签: javascript php jquery wordpress advanced-custom-fields

我想知道是否可以以及如何从特定页面模板上的高级自定义字段中获取参数,以进行轮播的某些设置(SlickSlider和jQuery)。

基本上,我不想要做的只是将脚本插入页面中间。

例如:

PHP:

  <?php
$class_name = get_field('class_name');
$number_slides = get_field('number_of_slides');
$slides_show = get_field('slides_to_show');
?>
<script>
$('.<?php echo $class_name;?>').slick({
  infinite: true,
  slidesToShow: <?php echo $number_slides; ?>,
  slidesToScroll: <?php echo $slides_show; ?>
});
</script>

我想知道是否可以进行add_action的排序以将该脚本推送到页脚,但是没有将其保存在functions.php文件中。

例如:

PHP:

<?php
add_action('wp_footer', function () {
?>
<script>
    $('.<?php echo $class_name;?>').slick({
      infinite: true,
      slidesToShow: <?php echo $number_slides; ?>,
      slidesToScroll: <?php echo $slides_show; ?>
    });
    </script>
<?php
});
?>

^^^我知道那太可怕了,但是我只是想说明我的想法。

我想我不确定的事情是如何在从ACF中获取字段时将类似的东西传递给函数。问题是我想在其他页面上重用它,因此尝试获取页面ID以传递那些ACF项将很棘手,除非有一种方法可以检查它在哪个页面上,然后仅在该特定页面上呈现脚本。

我正在研究的另一件事是也许是一种do_action,然后从ACF捕获变量,然后将它们传递到函数文件中的add_action。但是,再次不确定是否可行。

无论如何,我在闲逛,时间还早,我需要更多的咖啡。因此,只是试图看看是否有可能偶然发生这样的事情?

0 个答案:

没有答案