wordpress - get_post_meta 短代码返回空字段
问题描述
我正在尝试创建一个自定义简码,允许我通过WooCommerce插件的自定义订单状态将自定义订单字段数据输入到自动生成的出站电子邮件模板中。
我对 PHP 的理解充其量是有限的,但在搜索论坛和谷歌数小时后,我想出了以下代码:
function wcal_abandoned_cart_id_shortcode_callback( $atts ) {
$atts = shortcode_atts( array(
'post_id' => get_the_ID(),
), $atts, 'wcal_abandoned_cart_id' );
return get_post_meta( $atts['post_id'], 'wcal_abandoned_cart_id', true );
}
add_shortcode( 'wcal_abandoned_cart_id', 'wcal_abandoned_cart_id_shortcode_callback' );
Wordpress 和插件似乎可以识别短代码 [wcal_abandoned_cart_id] 但输出值为空白。此特定订单应返回的值是“428”。我希望有人可以帮助我指出正确的方向。
提前致谢。
解决方案
你有没有尝试过像下面这样的另一种方式?
global $post;
$meta = get_post_meta( $post->ID, 'wcal_abandoned_cart_id', true );
请尝试代替
get_post_meta( $atts['post_id'], 'wcal_abandoned_cart_id', true );
推荐阅读
- python - Groupby 多列和聚合与 dask
- android - 使用 FirebaseListAdapter 仅对值进行排序,直到 999
- rest - 当响应正文中只有值而没有字段名称时,如何使用 POSTMAN 捕获变量中的响应正文
- jquery - 使用jQuery将参数附加到字符串中
- c - 如何使用 C 中的链接实现向 Dequeue 插入和显示元素
- android - 如果我为 Paymenttokenization 选项选择“DIRECT”方法,Google Pay“快速启动演示”不显示卡列表
- python - 如何为两个子图设置相等的刻度数?
- python - 如何对具有重复列名的行进行切片并按顺序堆叠该行
- mongodb - 无法在 Heroku 上运行任何 MongoDB 命令
- javascript - NodeJS 加密/解密文件