Automattic\WooCommerce\Internal\ProductAttributesLookup
LookupDataStore::add_product_attributes_lookup_table_settings()
Handler for 'woocommerce_get_settings_products', adds the settings related to the product attributes lookup table.
Метод класса: LookupDataStore{}
Хуков нет.
Возвращает
Массив
. New settings configuration array.
Использование
$LookupDataStore = new LookupDataStore(); $LookupDataStore->add_product_attributes_lookup_table_settings( $settings, $section_id ): array;
- $settings(массив) (обязательный)
- Original settings configuration array.
- $section_id(строка) (обязательный)
- Settings section identifier.
Код LookupDataStore::add_product_attributes_lookup_table_settings() LookupDataStore::add product attributes lookup table settings WC 9.7.1
public function add_product_attributes_lookup_table_settings( array $settings, string $section_id ): array { if ( 'advanced' === $section_id && $this->check_lookup_table_exists() ) { $title_item = array( 'title' => __( 'Product attributes lookup table', 'woocommerce' ), 'type' => 'title', ); $regeneration_is_in_progress = $this->regeneration_is_in_progress(); if ( $regeneration_is_in_progress ) { $title_item['desc'] = __( 'These settings are not available while the lookup table regeneration is in progress.', 'woocommerce' ); } $settings[] = $title_item; if ( ! $regeneration_is_in_progress ) { $regeneration_aborted_warning = $this->regeneration_was_aborted() ? sprintf( "<p><strong style='color: #E00000'>%s</strong></p><p>%s</p>", __( 'WARNING: The product attributes lookup table regeneration process was aborted.', 'woocommerce' ), __( 'This means that the table is probably in an inconsistent state. It\'s recommended to run a new regeneration process or to resume the aborted process (Status - Tools - Regenerate the product attributes lookup table/Resume the product attributes lookup table regeneration) before enabling the table usage.', 'woocommerce' ) ) : null; $settings[] = array( 'title' => __( 'Enable table usage', 'woocommerce' ), 'desc' => __( 'Use the product attributes lookup table for catalog filtering.', 'woocommerce' ), 'desc_tip' => $regeneration_aborted_warning, 'id' => 'woocommerce_attribute_lookup_enabled', 'default' => 'no', 'type' => 'checkbox', 'checkboxgroup' => 'start', ); $settings[] = array( 'title' => __( 'Direct updates', 'woocommerce' ), 'desc' => __( 'Update the table directly upon product changes, instead of scheduling a deferred update.', 'woocommerce' ), 'id' => 'woocommerce_attribute_lookup_direct_updates', 'default' => 'no', 'type' => 'checkbox', 'checkboxgroup' => 'start', ); $settings[] = array( 'title' => __( 'Optimized updates', 'woocommerce' ), 'desc' => __( 'Uses much more performant queries to update the lookup table, but may not be compatible with some extensions.', 'woocommerce' ), 'desc_tip' => __( 'This setting only works when product data is stored in the posts table.', 'woocommerce' ), 'id' => 'woocommerce_attribute_lookup_optimized_updates', 'default' => 'no', 'type' => 'checkbox', 'checkboxgroup' => 'start', ); } $settings[] = array( 'type' => 'sectionend' ); } return $settings; }