在WP中,不能在页眉.php和页脚.php中include_once()相同的文件


In WP, can't include_once() same file in both header.php and footer.php

有 3 个.php文件:

变量.php

    $foo = 'bar';

标头.php:

    include_once("vars.php");
    echo "In header: $foo";

页脚.php:

    include_once("vars.php");
    echo "In footer: $foo";

在上述情况下,$foo未设置在页脚.php中。如果我删除页眉.php中的include_once(),则$foo设置在页脚.php中,而不是页眉.php中。

猜我在某个地方做了一个愚蠢的事情,但对于我的生活,我找不到它。

..._once()函数不关心包含/要求发生的位置。包含文件后,在该特定脚本执行运行期间,它永远不会在任何地方再次include_once/require_once。

如果您需要在不同位置多次包含它,则不要使用 _once(( 变体。

第二次没有

包含它的原因是因为您告诉它include_once一次

无论如何,如果将include_once保留在 header.php 中,则应包含$foo。确保您在页脚.php之前没有更改$foo