我需要将$ a [' msg']传递给第二个函数(在php中)。我已经尝试过全局变量,显然,我做错了。有人可以帮忙。
function shreinlink_func( $atts )
{
$a = shortcode_atts( array(
'url' => 'something',
'msg' => 'something else',
), $atts );
return "<a onclick=\"shreinpop()\" data-emailID=\"shreinpop\" href=\"{$a['url']}\">Email</a>";
}
add_shortcode( 'shreinlink', 'shreinlink_func' );
function shreinlink_head()
{
echo "
<script type=\"text/javascript\">
function shreinpop() {
alert($a['msg']);
}
</script>
";
}
add_action( 'wp_head', 'shreinlink_head' );
答案 0 :(得分:1)
请考虑功能范围和功能变量。它们在函数内有效,只有那里,然后进行垃圾收集。
您可以选择在函数外部设置变量$ a,并在函数内部更改它的值,然后在其他函数内再次访问它。你必须使用
$this->a['msg']
您还可以传递$ a作为参考并在函数Function arguments中对其进行操作,然后在您的其他函数中使用该数组。