php - 在所有 WordPress 页面上使用变量的最佳方式

标签 php wordpress variables global-variables

我正在构建一个自定义主题,其中有很多我希望在整个过程中使用的变量。

例子:

$tv     = $options['tv'];
$movies = $options['movies'];
$print  = $options['print'];
//....and about 50 more.

为此,我只是将它们全部放在一个名为 vars.php 的文件中,然后将其包含在主题的 header.php 中...

require_once('vars.php');

虽然这确实有效,但感觉并不是最好的方法。我多次读到使用全局变量(大概在 functions.php 中)不是一个好主意,但这是真的吗?

但是如果在 functions.php 中使用全局变量(甚至很多)是正确的方法吗?:

global $tv;
$tv     = $options['tv'];

global $movies
$movies = $options['movies'];

global $print
$print  = $options['print'];

最佳答案

最好的方法是在 functions.php 或插件的主插件文件中明确定义所有变量。 我已经验证这是包括 akismet 在内的大多数流行插件的使用方式。具体来说,您需要这样做。

define( MYVAR_TV, $options['tv'] );
define( MYVAR_MOVIES, $options['movies'] );
define( MYVAR_PRINT, $options['print'] );

在这些之后你可以随心所欲地使用它们

echo MYVAR_TV;

希望对您有所帮助。

关于php - 在所有 WordPress 页面上使用变量的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46248656/

相关文章:

html - 更改 MailChimp 的成功/错误消息颜色

c++ - 为什么C++中静态变量需要声明两次

javascript - 每次点击都会改变数字?

java - 为什么建议将实例变量声明为私有(private)?

php - HTML 空 <a> 标签空格?

php - 表单引擎建议

php - laravel sql 语句 - 如何向 isnot 添加附加子句 - 'where' '!=' 或

PHP Profiler - 使用 C++ 从 PHP 扩展获取客户端 IP 和 URL

html - 使用 css 转换时缩略图在翻转时闪烁

mysql - Bash:即使条件为真也无法进入