WP_Widget_Media_Audio::enqueue_admin_scripts()publicWP 4.8.0

Loads the required media files for the media manager and scripts for media widgets.

Метод класса: WP_Widget_Media_Audio{}

Хуков нет.

Возвращает

null. Ничего (null).

Использование

$WP_Widget_Media_Audio = new WP_Widget_Media_Audio();
$WP_Widget_Media_Audio->enqueue_admin_scripts();

Список изменений

С версии 4.8.0 Введена.

Код WP_Widget_Media_Audio::enqueue_admin_scripts() WP 6.5.2

public function enqueue_admin_scripts() {
	parent::enqueue_admin_scripts();

	wp_enqueue_style( 'wp-mediaelement' );
	wp_enqueue_script( 'wp-mediaelement' );

	$handle = 'media-audio-widget';
	wp_enqueue_script( $handle );

	$exported_schema = array();
	foreach ( $this->get_instance_schema() as $field => $field_schema ) {
		$exported_schema[ $field ] = wp_array_slice_assoc( $field_schema, array( 'type', 'default', 'enum', 'minimum', 'format', 'media_prop', 'should_preview_update' ) );
	}
	wp_add_inline_script(
		$handle,
		sprintf(
			'wp.mediaWidgets.modelConstructors[ %s ].prototype.schema = %s;',
			wp_json_encode( $this->id_base ),
			wp_json_encode( $exported_schema )
		)
	);

	wp_add_inline_script(
		$handle,
		sprintf(
			'
				wp.mediaWidgets.controlConstructors[ %1$s ].prototype.mime_type = %2$s;
				wp.mediaWidgets.controlConstructors[ %1$s ].prototype.l10n = _.extend( {}, wp.mediaWidgets.controlConstructors[ %1$s ].prototype.l10n, %3$s );
			',
			wp_json_encode( $this->id_base ),
			wp_json_encode( $this->widget_options['mime_type'] ),
			wp_json_encode( $this->l10n )
		)
	);
}