PHP 在简码标签外显示简码内容
PHP displaying content of shortcode outside of shortcode tags
我正在尝试输出
[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('youtube-playlist') 来自高级自定义字段。
不幸的是得到的输出是
http://www.youtube.com/embed?layout=gallery&listType=playlist&list=*some-test-playlist*[embedyt][/embedyt]
我不明白我的 PHP 哪里出错了,我有不同的变体,比如使用变量和不同类型的连接,但我显然遗漏了一些东西。
如有任何帮助,我们将不胜感激,谢谢!
您正在调用 the_field
函数,该函数实际打印自定义字段的值,但您实际上需要将该值传递给 do_shortcode
函数而不是显示它。
您必须改用 get_field
函数。尝试将您的代码更新为以下
<?php echo do_shortcode('[[embedyt]' . get_field('youtube-playlist') . '[/embedyt]]'); ?>
我正在尝试输出
[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('youtube-playlist') 来自高级自定义字段。
不幸的是得到的输出是
http://www.youtube.com/embed?layout=gallery&listType=playlist&list=*some-test-playlist*[embedyt][/embedyt]
我不明白我的 PHP 哪里出错了,我有不同的变体,比如使用变量和不同类型的连接,但我显然遗漏了一些东西。
如有任何帮助,我们将不胜感激,谢谢!
您正在调用 the_field
函数,该函数实际打印自定义字段的值,但您实际上需要将该值传递给 do_shortcode
函数而不是显示它。
您必须改用 get_field
函数。尝试将您的代码更新为以下
<?php echo do_shortcode('[[embedyt]' . get_field('youtube-playlist') . '[/embedyt]]'); ?>