[英]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.