繁体   English   中英

WordPress没有看到vendor / autoload.php

[英]WordPress not seeing vendor/autoload.php

我正在学习如何创建自己的WordPress主题,因此我已经设置了本地环境,该环境的根目录以及wp-content文件夹中包含composer.json。 除此之外,我还在主题文件夹中有一个composer.json,用于仅用于主题的依赖关系。 我的问题是WordPress无法读取根目录中的vendor / autoload。

我正在尝试从由autoload.php加载的.env文件加载所有数据库详细信息。 当我将自动加载的目录路径更改为主题文件夹时,一切正常。

当我将其更改为从根目录使用自动加载功能时,WordPress出现错误,提示它无法连接至数据库。 我一直在尝试几种方法来使WordPress从根目录供应商文件夹中读取autoload.php,但它只能从主题中使用。

我的代码是:

require_once(dirname(__DIR__) . '/vendor/autoload.php');
 $dotenv = new Dotenv\Dotenv( dirname( __DIR__ ) );
 $dotenv->load();

任何帮助或建议,将不胜感激。 感谢您抽出宝贵的时间阅读我的帖子。

谢谢

建议将“ vendor”文件夹放在主题文件夹中,因为这是标准做法。 这就是为什么dirname(__DIR__)返回主题或插件路径的原因。

虽然,如果您仍然想从根目录获取完整的目录路径...

对于PHP <5.3,请使用:

$upOne = realpath(dirname(__FILE__) . '/..');

或在PHP 5.3+中使用:

$upOne = realpath(__DIR__ . '/..');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM