Переместите скрипт jQuery в нижний колонтитул в шаблоне страницы в WordPress. - PullRequest
0 голосов
/ 26 апреля 2019

Мне было интересно, можно ли получить параметры из расширенного настраиваемого поля в определенном шаблоне страницы для некоторых параметров карусели (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. Дело в том, что я хочу использовать это на другой странице, возможно, поэтому попытка захватить идентификатор страницы для передачи этих элементов ACF будет непростой задачей, если только не будет способа проверить, на какой странице она находится, а затем отобразить сценарий только на этой конкретной странице.

Другая вещь, которую я изучал, это может быть a do_action своего рода, а затем выхватывание переменных из ACF и их передача в add_action в файле функций. Но, опять же, не уверен, возможно ли это или нет.

В любом случае, я болтаю, и рано, и мне нужно больше кофе. Так что, просто пытаясь понять, возможно ли что-то подобное случайно?

...