Wordpress SMOF全局数据声明需要两次

Wordpress SMOF全局数据声明需要两次,wordpress,global,Wordpress,Global,我补充说 在header.php文件中,显示footer.php文件中的数据 <?php if($smof_data['fb_link']): ?> <a href="<?php echo esc_url( $smof_data['fb_link'] ); ?>">Facebook</a> <?php endif; ?> 但数据并没有显示出来 如果我添加了footer.php文件,则会显示数据。为什么全局数据声明需要两次

我补充说 在header.php文件中,显示footer.php文件中的数据

    <?php if($smof_data['fb_link']): ?>
<a href="<?php echo esc_url( $smof_data['fb_link']  ); ?>">Facebook</a>

<?php endif; ?> 
但数据并没有显示出来


如果我添加了footer.php文件,则会显示数据。为什么全局数据声明需要两次?

在这种情况下,全局变量可能用于任何函数,或者声明可能在函数中, 不能使用函数外部声明在函数中使用此变量,也不能使用函数内部声明在函数外部使用此变量


在这种情况下,您必须重新声明这个变量。

我对SMOF做了同样的事情

并且使用了下面的代码,它工作得非常好

if(!empty($data['facebook_head_url']))
    {
        $faceicon='<li><a href='.$data['facebook_head_url']; 
        $faceicon .='><span class="foundicon-facebook"> </span></a></li>';
        echo $faceicon;
    }