PluginProbe
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot / 4.2.6
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot v4.2.6
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/Editors/BlockEditor/Blocks/Sidebar.php +3 -20 4.9.24.2.6 View file →
@@ -1,13 +1,8 @@
1 1 <?php
2 -// phpcs:disable WordPress.DB.SlowDBQuery.slow_db_query_meta_query,WordPress.DB.SlowDBQuery.slow_db_query_meta_key,WordPress.DB.SlowDBQuery.slow_db_query_tax_query -- core block query; meta/tax filtering required.
2 +
3 3 namespace WPDeveloper\BetterDocs\Editors\BlockEditor\Blocks;
4 4
5 -if ( ! defined( 'ABSPATH' ) ) {
6 - exit;
7 -}
8 -
9 -
10 5 use WPDeveloper\BetterDocs\Editors\BlockEditor\Block;
11 6
12 7 class Sidebar extends Block {
13 8
@@ -60,12 +55,8 @@
60 55 'docs_per_page' => -1,
61 56 'postsOrderBy' => 'title',
62 57 'postsOrder' => 'asc',
63 58 'enableNestedSubcategory' => false,
64 - // Default follows the global "Lazy Load Sidebar Docs & Subcategories"
65 - // setting, mirroring the Elementor sidebar widget's control default, so
66 - // enabling the setting lazy-loads the block too unless overridden.
67 - 'enableLazyLoad' => (bool) betterdocs()->settings->get( 'archive_lazy_load_descendants' ),
68 59 'docs_per_subcategory' => 10,
69 60 'titleTag' => 'h1',
70 61 'show_count' => false,
71 62 'enableStickyTOC' => false,
@@ -131,9 +122,10 @@
131 122 'terms_orderby' => $settings['terms_orderby'] == 'doc_category_order' ? 'betterdocs_order' : $settings['terms_orderby'],
132 123 'terms_include' => array_diff( $this->string_to_array( $settings['includeCategories'] ), $this->string_to_array( $settings['excludeCategories'] ) ),
133 124 'terms_exclude' => isset( $settings['excludeCategories'] ) ? $this->string_to_array( $settings['excludeCategories'] ) : '',
134 125 'nested_subcategory' => $settings['enableNestedSubcategory'],
135 - 'lazy_load' => ! empty( $settings['enableLazyLoad'] ),
126 + 'multiple_knowledge_base' => $default_multiple_kb,
127 + 'kb_slug' => $kb_slug,
136 128 'sidebar_list' => true,
137 129 'list_icon_url' => '',
138 130 'list_icon_name' => $settings['sidebar_layout'] == 'layout-4' ? '' : ( ! empty( $this->attributes['listIconImageUrl'] ) ? $this->attributes['listIconImageUrl'] : ( ! empty( $this->attributes['listIcon'] ) ? $this->attributes['listIcon'] : ( ! empty( betterdocs()->settings->get( 'docs_list_icon' ) ) ? betterdocs()->settings->get( 'docs_list_icon' )['url'] : 'list' ) ) ),
139 131 'layout_type' => 'block',
@@ -151,17 +143,8 @@
151 143 $default_view_params['number_of_faqs'] = $settings['initialFAQQueryNumber'];
152 144 $default_view_params['faq_term_ids'] = $settings['searchModalQueriesFaqGroupIds'];
153 145 $default_view_params['doc_ids'] = $settings['searchModalQueryDocIds'];
154 146 $default_view_params['doc_term_ids'] = $settings['searchModalQueryTermIds'];
155 - }
156 -
157 - // Pass a KB scope only when one is explicitly selected on the block. When none is
158 - // set, omit kb_slug so the betterdocs_sidebar_template_shortcode_params filter
159 - // (Pro/MKB) can inject the current knowledge_base context on KB templates — the
160 - // same path the default sidebar uses. (Passing kb_slug='' would block injection.)
161 - if ( ! empty( $kb_slug ) ) {
162 - $default_view_params['shortcode_attr']['kb_slug'] = $kb_slug;
163 - $default_view_params['shortcode_attr']['multiple_knowledge_base'] = (bool) $default_multiple_kb;
164 147 }
165 148
166 149 return $default_view_params;
167 150 }