Automattic\WooCommerce\Internal\Admin\Onboarding
OnboardingFonts::install_font_families()
Install font families.
Метод класса: OnboardingFonts{}
Хуков нет.
Возвращает
Массив
.
Использование
$result = OnboardingFonts::install_font_families( $slug_font_families_to_install, $font_collection );
- $slug_font_families_to_install(массив) (обязательный)
- Font families to install.
- $font_collection(массив) (обязательный)
- Font collection.
Код OnboardingFonts::install_font_families() OnboardingFonts::install font families WC 9.7.1
private static function install_font_families( $slug_font_families_to_install, $font_collection ) { return array_reduce( $slug_font_families_to_install, function( $carry, $slug ) use ( $font_collection ) { $font_family_from_collection = self::get_font_family_by_slug_from_font_collection( $slug, $font_collection ); $font_family_name = $font_family_from_collection['fontFamily']; $font_family_installed = FontFamily::get_font_family_by_name( $font_family_name ); if ( $font_family_installed ) { return array_merge( $carry, array( $slug => $font_family_installed ) ); } $font_family_settings = array( 'fontFamily' => $font_family_from_collection['fontFamily'], 'preview' => $font_family_from_collection['preview'], 'slug' => $font_family_from_collection['slug'], 'name' => $font_family_from_collection['name'], ); $font_family_id = FontFamily::insert_font_family( $font_family_settings ); if ( is_wp_error( $font_family_id ) ) { if ( 'duplicate_font_family' !== $font_family_id->get_error_code() ) { wc_get_logger()->error( sprintf( 'Font Family installation error: %s', $font_family_id->get_error_message(), ), array( 'source' => self::SOURCE_LOGGER ) ); } return $carry; } return array_merge( $carry, array( $slug => get_post( $font_family_id ) ) ); }, array(), ); }