PHP,Wordpress - get_locale; require_once():需要打开失败

时间:2018-06-14 01:56:43

标签: php wordpress

我会感谢一些错误的帮助我无法理解......

我将网站从本地主机迁移到服务器,但现在我的语言翻译部分存在一个问题。

代码:

<?php
    $locale =get_locale();
    echo $locale;
    $lang = require $_SERVER['DOCUMENT_ROOT'].'/wp-content/themes/template  /lang/$locale.php';
?>

所以我回应了语言环境,以确定get_locale是否实际上是单词而它确实是。它返回“en_US”。在require_once的路径中,此文件存在,但如果我想保存文件,则返回:

  

错误:   require():打开所需的'/ usr / home / removedusername / htdocs / wp-content /themes/template/lang/$locale.php'(include_path ='。:/ var / www / php55 / lib / php')

虽然我想,男人文件路径一定有问题,我把“$ locale.php”交换到“en_US.php”并且它没有显示错误,网站实际上也正常工作当然由于我不使用变量,因此无法再切换语言。 为什么包含变量($ locale.php)的路径不起作用?

可能是一个愚蠢的错误,但我会喜欢一些帮助。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

您在字符串周围使用单引号,因此变量不会被替换。只需用双引号替换单引号。

"$_SERVER[DOCUMENT_ROOT]/wp-content/themes/template/lang/$locale.php"

注意wordpress,get_template_directory,get_stylesheet_directory,get_theme_root和plugin_dir_path可用于访问已配置的资产目录。