Как вставить ACF get_field внутри привязки JavaScript? - PullRequest
0 голосов
/ 21 апреля 2019

Мне нужно вставить URL ACF.Использование javascript казалось хорошей идеей, но я не могу найти нужную информацию.

Я пытался использовать ACF PHP внутри javascript-команды innerHTML.Значок отображается, но href нет.

<script>document.getElementById('bio_linkedin_btn').innerHTML = '<a href="<?php echo the_field('linkedin_izan'); ?>"><i class="fa fa-linkedin"></i></a>\n';</script>

Ответы [ 2 ]

0 голосов
/ 21 апреля 2019

Вам необходимо добавить идентификатор сообщения ко второму параметру.Также вам не нужно отображать эхо, если вы используете the_field().

<?php the_field('linkedin_izan', get_the_ID()); ?>

ИЛИ

<?php echo get_field('linkedin_izan', get_the_ID()); ?>

Если что-то из вышеперечисленного не работает, попробуйте это.Добавьте скрытый div и отобразите поле ACF внутри атрибута data-url

<div id="theURL" hidden data-url="<?php echo get_field( 'linkedin_izan', get_the_ID() ); ?>"></div>

Затем получите значение в свой javascript

var el = document.querySelector('#theURL');
var yourURL = el.getAttribute('data-url'));
console.log(yourURL);

document.getElementById('bio_linkedin_btn').innerHTML = '<a href="'+yourURL+'"><i class="fa fa-linkedin"></i></a>\n';
0 голосов
/ 21 апреля 2019

the_field() функция отображает контент для вас.Просто используйте the_field ().

<script>document.getElementById('bio_linkedin_btn').innerHTML = '<a href="<?php the_field('linkedin_izan'); ?>"><i class="fa fa-linkedin"></i></a>\n';</script>
...