如何在JavaScript锚中插入ACF get_field?

时间:2019-04-20 21:52:23

标签: javascript wordpress advanced-custom-fields

我需要插入ACF URL。使用javascript似乎是一个好主意,但我无法获取href。

我尝试在innerHTML javascript命令中使用ACF PHP。显示图标,但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 :(得分:0)

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>

答案 1 :(得分:0)

您需要将帖子的ID添加到第二个参数。另外,如果您使用的是<?php the_field('linkedin_izan', get_the_ID()); ?> ,则无需回显。

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

OR

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

如果以上任何一项均无效,请尝试此操作。添加一个隐藏的div并在data-url属性内回显ACF字段

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';

然后,将值获取到您的javascript

public GetUserPreferencesCall GetEbayUserPreferences()
{
    if (this.Context == null) // context needs to be defined first
    {
        throw new NullReferenceException("ApiContext is not defined!");
    }
    GetUserPreferencesCall userPreferences = new GetUserPreferencesCall(Context);
    userPreferences.ShowSellerProfilePreferences = true;

    try { userPreferences.Execute(); }
    catch (Exception ex)
    {
        // handle exception
    }
    return userPreferences; 
}