You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WordPress短代码中获取自定义字段值?

问题解决方法

你的代码问题出在单引号字符串无法解析变量——PHP里单引号包裹的内容会原样输出,所以{$audio_source}并没有被替换成实际获取到的字段值。

修复方案

方案1:改用双引号包裹短代码字符串

把包裹短代码的单引号换成双引号,同时转义内部的双引号:

<?php
$audio_source = get_post_meta($post->ID, 'audio_url', true);

echo do_shortcode("
[zoomsounds_player config=\"motionplayer\" source=\"{$audio_source}\"]
");
?>

方案2:使用字符串拼接

通过.连接字符串和变量,避免引号解析问题:

<?php
$audio_source = get_post_meta($post->ID, 'audio_url', true);

echo do_shortcode('[zoomsounds_player config="motionplayer" source="' . $audio_source . '"]');
?>

额外检查点

  • 先通过var_dump($audio_source);确认get_post_meta是否成功获取到了字段值,如果输出bool(false),说明该文章没有设置audio_url字段,或者字段名称有误。
  • 确保代码所在位置能正确获取到$post->ID——如果不在WordPress循环内,需要先全局声明global $post;,或者传入具体的文章ID。

内容的提问来源于stack exchange,提问作者Tural

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 14:20:50