【问题标题】:how can I add php code inside a data image using echo如何使用 echo 在数据图像中添加 php 代码
【发布时间】:2014-04-11 19:44:38
【问题描述】:

我正在使用我的数据来获取 iframe src,因为我在我的 function.js 中使用了这些数据。

例如,通过这个 youtube 视频:

我带有 youtube id 的自定义字段:

<?php the_sub_field('youtube'); ?>

我的缩略图是:

<img src="http://img.youtube.com/vi/<?php the_sub_field('youtube'); ?>/0.jpg" class="photo_medias"/>

和我的 iframe:

<iframe width="706" height="364"  src="//www.youtube.com/embed/<?php the_sub_field('youtube'); ?>?showinfo=0&controls=0" frameborder="0" allowfullscreen>

当将其添加到 img 数据时:

<img src="http://img.youtube.com/vi/<?php the_sub_field('youtube'); ?>/0.jpg"  data-videofull='<iframe width="706" height="364"  src="//www.youtube.com/embed/<?php the_sub_field('youtube'); ?>?showinfo=0&controls=0" frameborder="0" allowfullscreen>"' class="photo_medias">

效果很好。

现在我正在尝试使用 vimeo 代码生成另一个 data-videofull,这与生成缩略图和显示缩略图有点不同

这是我的自定义字段,带有 vimeo id:

<?php the_sub_field('vimeo'); ?>

我的缩略图是(这里有点不同,我需要在里面使用echo)

<?php echo '<img src="' . get_vimeo_thumb(get_sub_field('vimeo'), 'thumbnail_large') . '"" class="photo_medias" >';?>

我的 iframe(与 youtube 相同)

<iframe width="706" height="364"  src="//player.vimeo.com/video/<?php the_sub_field('vimeo'); ?>?title=0" frameborder="0" allowfullscreen></iframe>

但是当尝试将 iframe 地址添加到 data-videofull 中时,我遇到了一个 php 错误...

这是我尝试过的,但它不起作用:

<?php echo '<img src="' . get_vimeo_thumb(get_sub_field('vimeo'), 'thumbnail_large') . '"" data-videofull='<iframe width="706" height="364"  src="//player.vimeo.com/video/<?php the_sub_field('vimeo'); ?>?title=0" frameborder="0" allowfullscreen></iframe>' class="photo_medias" >';?>

我猜问题来自于我的 img src 的回声,但我必须使用它...

谁能帮我解决这个问题?

非常感谢您的帮助,

【问题讨论】:

  • 你得到什么错误?
  • 空白页,我的语法有错误,但我找不到哪里
  • 为什么 data-videofull 前有两个双引号?
  • 如果你得到一个白页检查你的错误日志或在你的 php.ini 中启用 display_errors
  • @Fabio 我尝试不使用 2 个双引号,问题是我需要再次使用 echo 来获取 ,但我找不到正确的语法

标签: javascript php iframe youtube advanced-custom-fields


【解决方案1】:

出了点问题,你需要转义单引号,并且不要将 php 标签放在 php 其他标签中,而是连接你的字符串和函数。你还有一个双引号,我删除了。

<?php echo '<img src="' . get_vimeo_thumb(get_sub_field('vimeo'), 'thumbnail_large') . '" data-videofull=\'<iframe width="706" height="364"  src="//player.vimeo.com/video/'.the_sub_field('vimeo').'?title=0" frameborder="0" allowfullscreen></iframe>\' class="photo_medias" >';?>

【讨论】:

  • 感谢@Fabio,我还添加了替换 .the_sub_field('vimeo')。通过 .get_sub_field('vimeo').,它工作正常
  • 完美的家伙!很高兴能帮到你!
【解决方案2】:

试试这个:

<?php 

$frame = '<iframe width="706" height="364"  src="//player.vimeo.com/video/'.the_sub_field('vimeo'). '" title=0" frameborder="0" allowfullscreen></iframe>';

echo '<img src="' . get_vimeo_thumb(get_sub_field('vimeo'), 'thumbnail_large') . '" data-videofull="'.$frame.'" class="photo_medias" >';

?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-13
    • 2016-04-23
    • 2016-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多