我在网站上使用ACF, 并尝试设置一个PHP变量, 该变量是包含ACF字段的iframe。
我无法弄清楚为什么它不起作用, 因为我可以回显该变量并显示出来, 但否则会吐出src(unknown)?
// Get spotify and set up tab
if (have_rows('roster_media')):
// loop through the rows of data
while (have_rows('roster_media')): the_row();
$spotify_uri = get_sub_field('rm_sp_link');
echo $spotify_uri;
$url = $spotify_uri;
echo $url;
endwhile;
else:
// no rows found
endif;
$rm_sp = '<iframe src="'.$url.'" width="300" height="380" frameborder="0" allowtransparency="true" allow="encrypted-media"></iframe>';
然后在页面的后面, 我通过以下方式致电:
<?php
$count = 0;
foreach ($embed_links as $e) {
if ($count==0) {
$rm_act = " active show";
} else {
$rm_act = "";
}
$content;
if ($e['embed_platform']['value'] === "rm_sp") {
$content ='<div class="rm-video">'.$rm_sp.'</div>';
} else if ($e['embed_platform']['value']==="rm_vid") {
$content = '<div class="rm-video">'.$rm_vid.'</div>';
}
echo '<div class="tab-pane'.$rm_act.'" id="'.$e['embed_platform']['value'].'" role="tabpanel">'.$content.'</div>';
$count++;
}
?>
#1
我敢肯定这是最糟糕的方法, 但是由于没有其他想法, 它目前对我有用。我正在使用jQuery实现此目的。
在while循环中, 我添加了:
$spotify_uri = get_sub_field('rm_sp_link');
echo '<div id="spot_id">'.$spotify_uri.'</div>';
然后我的jQuery看起来像这样:
if ($("#spot_id")[0]){
// Do something if class exists
spotifyUri = $("#spot_id").text();
console.log(spotifyUri);
$("#spot_iframe").attr('src' , $("#spot_iframe").attr('src') + spotifyUri);
} else {
// Do something if class does not exist
}
显然, #spot_id也需要对用户隐藏。
评论前必须登录!
注册