我对WordPress中的变量范围感到困惑。 即将在一个文件中定义的变量可用 在同一主题的另一个文件中?即。
档案位置: 自定义主题
情景1
file: functions.php
line 1: <?php
line 2: $foo = 'value';
file: footer.php
line 1: <?php
line 2: echo $foo; //undefined?
情景2
file: header.php
line 1: <?php
line 2: $foo = 'value';
file: footer.php
line 1: <?php
line 2: echo $foo; //undefined?
答案 0 :(得分:0)
如果将变量视为全局变量,则可以访问变量。例如:
如果您在functions.php
$test_variable = 'this is test';
在header.php
中,您可以这样做。
global $test_variable;
echo $test_variable;
答案 1 :(得分:0)
要在整个主题中使变量可用,您需要将其设置为全局变量。根据您的示例,该变量集仅可用于该特定函数。
这里有关于全局的一些注释
如果可以,请避免一起设置自己的全局变量。
您必须确保在全局范围内设置的所有变量都具有唯一的名称。例如,使用混合字符,使用大写字母和小写字母混合,并在其间添加一些数字
名称也不仅仅是唯一的,但不应轻易重新创建。例如,像$dog
这样的全局名称是唯一的,但是这个名称可以很容易地用在另一个插件中,该插件将与您的全局变量名称冲突。要使其非常独特,请将主题名称与变量名称结合使用,例如$mytheme_dog
从您的示例中,您可以尝试这样的事情
file: functions.php
line 1: <?php
line 2: global $foo;
line 3: $foo = 'value';
file: footer.php
line 1: <?php
line 2: global $foo;
line 3: echo $foo;