我正在使用 Woocommerce REST API V3,我想获得一个基于特定元素的 meta_data 的自定义 JSON 回调(有徽章/没有)。
如果元素有id:14425
- 返回 1(它有一个徽章)。
如果元素有id:Select badge
- 返回 0(没有)。
这是元数据的外观(我在页面上打印它只是为了查看值结构):
[my_product_badge] => Array ( [0] => a:1:{s:2:"id";s:5:"14425";}
文件中的代码wc-api-products.php
(我删除了大部分不相关的代码以使其更易于阅读):
private function get_product_data( $product ) {
$prices_precision = wc_get_price_decimals();
return array(
'has_badge' => metadata_exists( 'post', $product->id, 'my_product_badge' ) ? (int) get_post_meta( $product->id, 'my_product_badge', ['id'] && is_numeric , true ) : 0,
);
}</code>
我在 JSON 中得到的结果不是基于以下规则is numeric
有任何想法吗?