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

时间:2014-05-07 06:56:46

标签: wordpress global

我添加<?php global $smof_data;?> 在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文件中添加<?php global $smof_data;?>,则会显示数据。为什么全球数据声明需要两次?

2 个答案:

答案 0 :(得分:0)

在这种情况下,您的全局变量可能在任何函数中使用,或者声明可能在函数中, 你不能在函数外部使用声明来使用这个变量,或者在函数中使用声明不能在函数之外使用。

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

答案 1 :(得分:0)

我用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;
    }