我正在使用会员制网站,我需要限制联系信息。我需要在打开和关闭短代码中插入此内容:
[level-accountant][/level-accountant]
我需要限制的内容是:
<?php $order = array('billing_company', 'billing_address_1', 'billing_address_2', 'billing_city', 'billing_postcode', 'billing_state', 'country');
$result = array();
foreach($order as $elem){
if($user_meta[$elem][0] != "")
$result[] = $user_meta[$elem][0];
}
echo implode(', ', $result);
?>
我在这里听到了这个答案: How to put php code inside opening and closing shortcodes
并尝试了这段代码:
<?php echo do_shortcode('[level-accountant]'.$order = array('billing_company', 'billing_address_1', 'billing_address_2', 'billing_city', 'billing_postcode', 'billing_state', 'country');
$result = array();
foreach($order as $elem){
if($user_meta[$elem][0] != "")
$result[] = $user_meta[$elem][0];
}
echo implode(', ', $result);.'[/level-accountant]'); ?>
但是我们无法弄清楚如何将我的内容放入其中。这段代码给了我错误。
答案 0 :(得分:1)
这应该像
一样简单$order = array('billing_company', 'billing_address_1', 'billing_address_2', 'billing_city', 'billing_postcode', 'billing_state', 'country');
$result = array();
foreach($order as $elem){
if($user_meta[$elem][0] != "") {
$result[] = $user_meta[$elem][0];
}
}
echo do_shortcode('[level-accountant]'.implode(', ', $result).'[/level-accountant]');
在上面的代码中,我只是将您错误放入do_shortcode()
调用的代码部分放在之前,将结果保存在变量中。