请任何人知道我如何提取这个短代码属性的一些值,并在另一个函数中使用它。
代码的外观:
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,则会分配值。