You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress插件PSR-4自动加载报错:GhaziRiyadh\ThemeSortcodes\App\App类未找到

解决WordPress插件PSR-4自动加载类未找到问题

你的致命错误根源是PSR-4命名空间与文件路径不匹配,结合你的配置和代码,具体问题及解决方案如下:

问题分析

  • Composer的PSR-4规则配置为:
    "autoload": {
        "psr-4": {
            "GhaziRiyadh\\ThemeSortcodes\\": "app/"
        }
    }
    
    这意味着命名空间前缀GhaziRiyadh\ThemeSortcodes\对应插件根目录下的app/文件夹,前缀之后的命名空间片段,必须对应app/下的子目录结构。
  • 你将App.php直接放在app/根目录,但命名空间写为GhaziRiyadh\ThemeSortcodes\App,这会让Composer自动尝试去app/App/App.php路径查找类,而该文件不存在,因此触发类未找到错误。

解决方案(二选一即可)

方案一:调整命名空间(推荐,保持文件路径不变)

修改app/App.php中的命名空间,移除末尾的\App:

<?php

namespace GhaziRiyadh\ThemeSortcodes;

class App
{
    public function __construct()
    {
        wp_die('from app');
    }
}

插件主文件的use语句无需修改,保持use GhaziRiyadh\ThemeSortcodes\App;即可。

最后在插件根目录执行命令,更新Composer自动加载映射:

composer dump-autoload

方案二:调整文件路径(保持命名空间不变)

在app/目录下创建App子文件夹,将App.php移动到app/App/路径下,此时文件路径为app/App/App.php,与命名空间GhaziRiyadh\ThemeSortcodes\App完全匹配。

同样需要在插件根目录执行命令更新映射:

composer dump-autoload

额外注意

如果还未生成vendor目录,先在插件根目录执行composer install安装依赖,再执行上述dump-autoload命令。

内容的提问来源于stack exchange,提问作者Riyadh Ghazi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 15:17:40