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

Elementor Widget批量加载与注册:代码无法正确完成组件注册的问题求助

Elementor Widget批量加载与注册:代码无法正确完成组件注册的问题求助

各位大佬好,我现在在做Elementor组件开发,想实现批量加载并注册widget文件,不用手动逐个引入和注册每个组件,但目前写的代码好像没法完成注册,想请大家帮忙看看问题出在哪。

我的需求是:通过文件夹路径批量处理所有widgets目录下的.php组件文件,不用一个个添加。

首先是我写的批量加载文件的私有函数:

private function include_widgets_files() {
    foreach (glob(__DIR__ . '/widgets/*.php') as $filename) {
        require_once $filename;
    }
}

然后是注册组件的公开函数,我尝试循环遍历文件夹来注册,但看起来没有生效:

public function register_widgets() {
    // 先确保组件文件已加载
    $this->include_widgets_files();

    // 尝试注册所有组件
    foreach (glob("widgets/*") as $filename) {
        \Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Widgets\ki__'.$filename.'() );
    }
}

我感觉问题应该出在注册的环节,加载文件的部分好像没问题,但就是没法把组件成功注册到Elementor里。有没有朋友能帮我分析下这段代码的问题,或者给我一个正确的批量注册实现方式?

备注:内容来源于stack exchange,提问作者user26444816

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.16 09:58:05