如何在 PHP 中声明一个可以跨模板使用的全局变量?

2022-08-30 13:57:42

在wordpress中,它调用heade.php然后调用任何模板名称或请求的页面。如何在我的php头中声明一个变量,然后我可以在其他模板中引用它?


答案 1

答案几乎取决于你需要它做什么。如果您正在开发一个主题,并希望在所有文件中保持值不变,则可以将它们放在始终加载的主题目录中。在那里定义的变量应该在主题中的任何位置都可用。如果您分发主题,则此方法有效。functions.php

如果要在自己的安装中根据需要修改现有主题,则可以按照建议将它们放入 ,或者(更简洁的方法)可以创建要更改的主题的子主题。这将使它与wordpress核心分开,并防止主题更新覆盖您的更改。wp-config.php

我刚刚尝试使用它:functions.php

函数.php:

$variable = "value";

页眉.php:

global $variable;
echo $variable;

为我工作。


答案 2

你可以这样声明它(在函数中.php):

global $domain;
$domain = 'http://www.mydomain.com/';

不过,您可以像这样回显WordPress网站的域。

<?php bloginfo('site_url');?>

$url = site_url();
echo $url;

或者作为一个函数,在函数中.php

function displayMyDomain() {
  global $domain; // you probably don't actually need to set it global as it is a function
  $domain = 'http://www.domain.com/';
  echo $domain;
}

然后,在任何地方,使用<?php displayMyDomain(); ?>


推荐