我试图输出
[embedyt]http://www.youtube.com/embed?layout=gallery&listType=playlist&list=*some-playlist*[/embedyt]
在Wordpress中使用高级自定义字段和YouTube插件的组合。
我的代码是:
<?php
echo do_shortcode('[[embedyt]' . the_field('youtube-playlist') . '[/embedyt]]');
?>
其中[emedyt]代码来自嵌入YouTube,而the_field(&#39; youtube-playlist&#39;)来自高级自定义字段。
不幸的是输出的是
http://www.youtube.com/embed?layout=gallery&listType=playlist&list=*some-test-playlist*[embedyt][/embedyt]
我不明白我的PHP出错了,我有不同的变化,比如使用变量和不同类型的连接,但我显然错过了一些东西。
非常感谢任何和所有帮助,谢谢!
答案 0 :(得分:1)
您正在调用the_field
函数,该函数实际打印自定义字段的值,但实际上您需要将值传递给do_shortcode
函数而不是显示它。
您必须使用get_field
功能。尝试将代码更新为以下
<?php echo do_shortcode('[[embedyt]' . get_field('youtube-playlist') . '[/embedyt]]'); ?>