Automattic\WooCommerce\Blocks\AIContent
PatternsHelper::get_patterns_dictionary()
Get the Patterns Dictionary.
Method of the class: PatternsHelper{}
No Hooks.
Return
Array|WP_Error
. Returns pattern dictionary or WP_Error on failure.
Usage
$result = PatternsHelper::get_patterns_dictionary( $pattern_slug );
- $pattern_slug(string|null)
- The pattern slug.
Default: null
PatternsHelper::get_patterns_dictionary() PatternsHelper::get patterns dictionary code WC 9.8.1
public static function get_patterns_dictionary( $pattern_slug = null ) { $default_patterns_dictionary = PatternsDictionary::get(); if ( empty( $default_patterns_dictionary ) ) { return new WP_Error( 'missing_patterns_dictionary', __( 'The patterns dictionary is missing.', 'woocommerce' ) ); } $patterns_dictionary = ''; $ai_connection_allowed = get_option( 'woocommerce_blocks_allow_ai_connection' ); if ( $ai_connection_allowed ) { $patterns_ai_data_post = self::get_patterns_ai_data_post(); if ( ! empty( $patterns_ai_data_post->post_content ) ) { $patterns_dictionary = json_decode( $patterns_ai_data_post->post_content, true ); if ( json_last_error() !== JSON_ERROR_NONE ) { return new WP_Error( 'json_decode_error', __( 'Error decoding JSON.', 'woocommerce' ) ); } } } if ( ( $patterns_dictionary === $default_patterns_dictionary || empty( $patterns_dictionary ) ) && $pattern_slug ) { return self::find_pattern_by_slug( $default_patterns_dictionary, $pattern_slug ); } elseif ( $pattern_slug && is_array( $patterns_dictionary ) ) { return self::find_pattern_by_slug( $patterns_dictionary, $pattern_slug ); } elseif ( is_array( $patterns_dictionary ) ) { return $patterns_dictionary; } return $default_patterns_dictionary; }