请任何人知道我如何提取这个短代码属性的一些值,并在另一个函数中使用它。
代码的外观:
function myVal($attr, $content = null) {
extract(shortcode_atts(array(
\'var1\' => \'\',
\'var2\' => \'\',
\'var3\' => \'\',
\'var4\' => \'\',
\'var5\' => \'\',
), $attr));
return $var1.\' \'.$var3.\' \'.$var5;
//Value to display outside the wordpress shortcode.
global $outvalue;
$outvalue = $val2.\' \'.$val4;
}
然后我想在另一个函数中调用$outvalue变量。
function outval() {
global $outvalue;
echo $outvalue;
}
问题是$outvalue没有显示任何内容,请大家帮忙我不知道哪里做错了,我也知道我可以使用
get_shortcode_regex()
但我不知道如何用它来调用
$outvalue;
.请欣赏分步回答指南。谢谢
SO网友:websupporter
第一:在将值添加到$outvalue
, 因此,这部分代码永远无法访问。
第二:在将值添加到$outvalue
.
此功能适用于我:
function myVal($attr, $content = null) {
extract(shortcode_atts(array(
\'var1\' => \'\',
\'var2\' => \'\',
\'var3\' => \'\',
\'var4\' => \'\',
\'var5\' => \'\',
), $attr));
//Value to display outside the wordpress shortcode.
global $outvalue;
$outvalue = $var2.\' \'.$var4;
return $var1.\' \'.$var3.\' \'.$var5;
}
记住,当这些值实际分配给
$outvalue
. 这发生在in之后
the_content()
, 因为在
the_content
-滤器
如果你打电话outval()
在标题中。php,您将无法获得任何信息,因为您的shortcode函数尚未运行。如果你在页脚处打电话。php,则会分配值。