无法使用header.php中的functions.php变量

时间:2013-09-19 07:07:35

标签: wordpress

我有这个简单的全局变量来调用图像路径。我把它放在functions.php中,因此可以在任何页面中使用。

// Inside functions.php
$img = get_template_directory_uri().'/assets/img/';

// Inside header.php
<img src="<?php echo $img; ?>my-image.jpg">

但是当我在header.php内调用它时,该变量会返回为空。奇怪的是,当我在index.php等其他模板页面中调用它时,它工作正常。

我尝试使用Google搜索但结果总是关于通用PHP header(Location)

对此有何解决方案?

由于

2 个答案:

答案 0 :(得分:2)

您可以在使用之前将其定义为全局(在标题中),例如:

<?php 
// Inside functions.php
$img = get_template_directory_uri().'/assets/img/';

// Inside header.php
global $img;
?>
<img src="<?php echo $img; ?>my-image.jpg">

它应该有用。

虽然建议使用@Ankit Agrawal的解决方案。

答案 1 :(得分:1)

将此功能添加到functions.php

function img()
{
    return get_template_directory_uri().'/assets/img/';
}

并在header.php中使用此内容:

<img src="<?php echo img(); ?>my-image.jpg">