有点长篇大论,但试图解释清楚:)
我正在钻研我的新主题的代码,不熟悉这种类型的数据存储/拉取-有人能帮我理解这里发生了什么吗,请:
我试图创建一个页面,只输出附有“优惠券”的帖子优惠券\'存储为帖子的meta\\u密钥。
它是meta_value
存储为如下数组(使用打印输出):
a: 7:{s:9:“突出显示”;s:14:“测试突出显示”;s:5:“标题”;s:12:“食品五折”;s:11:“描述”;s:16:“测试描述”;s:4:“代码”;s:7:“1524521”;s:11:“弹出图像”;s:4:“4548”;s:17:“弹出描述”;s:11:“重定向到”;s:0:;}
我希望自定义页面输出:
我可以通过运行wp\\u查询输出前三个:
$q = new WP_Query(array(
\'post_type\' => \'listing\',
\'posts_per_page\' => 5,
\'meta_key\' => \'wc_coupon\',
\'meta_value\' => \' \',
\'meta_compare\' => \'!=\'
));
然而,我找不到一种方法meta_value
数组以显示每个帖子的单个元素。主题以一种我不理解的方式处理这个问题,也许有人可以向我解释一下。
Coupon.php
是一个部分文件,在显示任何单个帖子时使用,如下所示:
global $post, $Args;
use ListingTools\\Framework\\Helpers\\GetSettings;
$aCoupon = GetSettings::getPostMeta($post->ID, \'coupon\');
if ( empty($aCoupon) || ( empty($aCoupon[\'code\']) && empty($aCoupon[\'redirect_to\']) ) ){
return \'\';
}
?>
<div class="content-box_module__333d9">
<div class="content-box_body__3tSRB">
<?php echo do_shortcode(\'[get_coupon highlight="\'.esc_attr($aCoupon[\'highlight\']).\'" title="\'.esc_attr($aCoupon[\'title\']).\'" description="\'.esc_attr($aCoupon[\'description\']).\'" code="\'.esc_attr($aCoupon[\'code\']).\'" redirect_to="\'.esc_attr($aCoupon[\'redirect_to\']).\'"]\'); ?>
</div>
</div>
所以我不明白变量部分顶部的“使用”代码是如何工作的。我也不明白$aCoupon = GetSettings::getPostMeta($post->ID, \'coupon\');
正在运行,但他们可以使用此选项来显示优惠券数组的各个部分,如代码后面所示:
echo do_shortcode(\'[get_coupon highlight="\'.esc_attr($aCoupon[\'highlight\'])
希望这是可以遵循的:)提前谢谢。