PluginProbe
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot / 4.9.2
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot v4.9.2
4.9.2 4.9.1 4.9.0 4.8.2 4.8.1 4.8.0 4.7.0 4.6.2 4.6.1 4.6.0 4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 4.5.1 4.5.0 4.4.1 4.4.0 3.3.4 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 All 200 releases
← All changes | includes/config.php +22 -12 3.4.24.9.2 View file →
@@ -1,8 +1,8 @@
1 1 <?php
2 2
3 3 if ( ! defined( 'ABSPATH' ) ) {
4 - exit; // Exit if accessed directly
4 + exit; // Exit if accessed directly
5 5 }
6 6
7 7 use WPDeveloper\BetterDocs\Utils\Views;
8 8 use WPDeveloper\BetterDocs\Utils\Enqueue;
@@ -8,17 +8,27 @@
8 8 use WPDeveloper\BetterDocs\Utils\Enqueue;
9 9 use WPDeveloper\BetterDocs\Editors\Editor;
10 10 use WPDeveloper\BetterDocs\Editors\Elementor;
11 11 use WPDeveloper\BetterDocs\Editors\BlockEditor;
12 -
12 +use WPDeveloper\BetterDocs\Core\Settings;
13 +use WPDeveloper\BetterDocs\AI\ProviderFactory;
13 14 return [
14 - Enqueue::class => new Enqueue( BETTERDOCS_ABSURL, BETTERDOCS_ABSPATH, BETTERDOCS_VERSION ),
15 - Views::class => function ( $container ) {
16 - return new Views( BETTERDOCS_ABSPATH . 'views/', $container );
17 - },
18 - Editor::class => function ( $container ) {
19 - return new Editor( $container, [
20 - 'elementor' => Elementor::class,
21 - 'blockEditor' => BlockEditor::class
22 - ] );
23 - }
15 + Enqueue::class => new Enqueue( BETTERDOCS_ABSURL, BETTERDOCS_ABSPATH, BETTERDOCS_VERSION ),
16 + // Resolves the active AI platform (OpenAI / Gemini / Claude / DeepSeek / OpenRouter).
17 + // Pro / add-ons can swap providers via the `betterdocs_ai_providers` filter, or
18 + // replace the whole factory via the `betterdocs_container_config` filter.
19 + ProviderFactory::class => function ( $container ) {
20 + return new ProviderFactory( $container->get( Settings::class ) );
21 + },
22 + Views::class => function ( $container ) {
23 + return new Views( BETTERDOCS_ABSPATH . 'views/', $container );
24 + },
25 + Editor::class => function ( $container ) {
26 + return new Editor(
27 + $container,
28 + [
29 + 'elementor' => Elementor::class,
30 + 'blockEditor' => BlockEditor::class
31 + ]
32 + );
33 + },
24 34 ];