| @@ -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 | } |