Edit File by line
/home/barbar84/www/wp-inclu...
File: media.php
} else {
[4000] Fix | Delete
$bytes = '';
[4001] Fix | Delete
}
[4002] Fix | Delete
[4003] Fix | Delete
if ( $bytes ) {
[4004] Fix | Delete
$response['filesizeInBytes'] = $bytes;
[4005] Fix | Delete
$response['filesizeHumanReadable'] = size_format( $bytes );
[4006] Fix | Delete
}
[4007] Fix | Delete
[4008] Fix | Delete
$context = get_post_meta( $attachment->ID, '_wp_attachment_context', true );
[4009] Fix | Delete
$response['context'] = ( $context ) ? $context : '';
[4010] Fix | Delete
[4011] Fix | Delete
if ( current_user_can( 'edit_post', $attachment->ID ) ) {
[4012] Fix | Delete
$response['nonces']['update'] = wp_create_nonce( 'update-post_' . $attachment->ID );
[4013] Fix | Delete
$response['nonces']['edit'] = wp_create_nonce( 'image_editor-' . $attachment->ID );
[4014] Fix | Delete
$response['editLink'] = get_edit_post_link( $attachment->ID, 'raw' );
[4015] Fix | Delete
}
[4016] Fix | Delete
[4017] Fix | Delete
if ( current_user_can( 'delete_post', $attachment->ID ) ) {
[4018] Fix | Delete
$response['nonces']['delete'] = wp_create_nonce( 'delete-post_' . $attachment->ID );
[4019] Fix | Delete
}
[4020] Fix | Delete
[4021] Fix | Delete
if ( $meta && ( 'image' === $type || ! empty( $meta['sizes'] ) ) ) {
[4022] Fix | Delete
$sizes = array();
[4023] Fix | Delete
[4024] Fix | Delete
/** This filter is documented in wp-admin/includes/media.php */
[4025] Fix | Delete
$possible_sizes = apply_filters(
[4026] Fix | Delete
'image_size_names_choose',
[4027] Fix | Delete
array(
[4028] Fix | Delete
'thumbnail' => __( 'Thumbnail' ),
[4029] Fix | Delete
'medium' => __( 'Medium' ),
[4030] Fix | Delete
'large' => __( 'Large' ),
[4031] Fix | Delete
'full' => __( 'Full Size' ),
[4032] Fix | Delete
)
[4033] Fix | Delete
);
[4034] Fix | Delete
unset( $possible_sizes['full'] );
[4035] Fix | Delete
[4036] Fix | Delete
/*
[4037] Fix | Delete
* Loop through all potential sizes that may be chosen. Try to do this with some efficiency.
[4038] Fix | Delete
* First: run the image_downsize filter. If it returns something, we can use its data.
[4039] Fix | Delete
* If the filter does not return something, then image_downsize() is just an expensive way
[4040] Fix | Delete
* to check the image metadata, which we do second.
[4041] Fix | Delete
*/
[4042] Fix | Delete
foreach ( $possible_sizes as $size => $label ) {
[4043] Fix | Delete
[4044] Fix | Delete
/** This filter is documented in wp-includes/media.php */
[4045] Fix | Delete
$downsize = apply_filters( 'image_downsize', false, $attachment->ID, $size );
[4046] Fix | Delete
[4047] Fix | Delete
if ( $downsize ) {
[4048] Fix | Delete
if ( empty( $downsize[3] ) ) {
[4049] Fix | Delete
continue;
[4050] Fix | Delete
}
[4051] Fix | Delete
[4052] Fix | Delete
$sizes[ $size ] = array(
[4053] Fix | Delete
'height' => $downsize[2],
[4054] Fix | Delete
'width' => $downsize[1],
[4055] Fix | Delete
'url' => $downsize[0],
[4056] Fix | Delete
'orientation' => $downsize[2] > $downsize[1] ? 'portrait' : 'landscape',
[4057] Fix | Delete
);
[4058] Fix | Delete
} elseif ( isset( $meta['sizes'][ $size ] ) ) {
[4059] Fix | Delete
// Nothing from the filter, so consult image metadata if we have it.
[4060] Fix | Delete
$size_meta = $meta['sizes'][ $size ];
[4061] Fix | Delete
[4062] Fix | Delete
// We have the actual image size, but might need to further constrain it if content_width is narrower.
[4063] Fix | Delete
// Thumbnail, medium, and full sizes are also checked against the site's height/width options.
[4064] Fix | Delete
list( $width, $height ) = image_constrain_size_for_editor( $size_meta['width'], $size_meta['height'], $size, 'edit' );
[4065] Fix | Delete
[4066] Fix | Delete
$sizes[ $size ] = array(
[4067] Fix | Delete
'height' => $height,
[4068] Fix | Delete
'width' => $width,
[4069] Fix | Delete
'url' => $base_url . $size_meta['file'],
[4070] Fix | Delete
'orientation' => $height > $width ? 'portrait' : 'landscape',
[4071] Fix | Delete
);
[4072] Fix | Delete
}
[4073] Fix | Delete
}
[4074] Fix | Delete
[4075] Fix | Delete
if ( 'image' === $type ) {
[4076] Fix | Delete
if ( ! empty( $meta['original_image'] ) ) {
[4077] Fix | Delete
$response['originalImageURL'] = wp_get_original_image_url( $attachment->ID );
[4078] Fix | Delete
$response['originalImageName'] = wp_basename( wp_get_original_image_path( $attachment->ID ) );
[4079] Fix | Delete
}
[4080] Fix | Delete
[4081] Fix | Delete
$sizes['full'] = array( 'url' => $attachment_url );
[4082] Fix | Delete
[4083] Fix | Delete
if ( isset( $meta['height'], $meta['width'] ) ) {
[4084] Fix | Delete
$sizes['full']['height'] = $meta['height'];
[4085] Fix | Delete
$sizes['full']['width'] = $meta['width'];
[4086] Fix | Delete
$sizes['full']['orientation'] = $meta['height'] > $meta['width'] ? 'portrait' : 'landscape';
[4087] Fix | Delete
}
[4088] Fix | Delete
[4089] Fix | Delete
$response = array_merge( $response, $sizes['full'] );
[4090] Fix | Delete
} elseif ( $meta['sizes']['full']['file'] ) {
[4091] Fix | Delete
$sizes['full'] = array(
[4092] Fix | Delete
'url' => $base_url . $meta['sizes']['full']['file'],
[4093] Fix | Delete
'height' => $meta['sizes']['full']['height'],
[4094] Fix | Delete
'width' => $meta['sizes']['full']['width'],
[4095] Fix | Delete
'orientation' => $meta['sizes']['full']['height'] > $meta['sizes']['full']['width'] ? 'portrait' : 'landscape',
[4096] Fix | Delete
);
[4097] Fix | Delete
}
[4098] Fix | Delete
[4099] Fix | Delete
$response = array_merge( $response, array( 'sizes' => $sizes ) );
[4100] Fix | Delete
}
[4101] Fix | Delete
[4102] Fix | Delete
if ( $meta && 'video' === $type ) {
[4103] Fix | Delete
if ( isset( $meta['width'] ) ) {
[4104] Fix | Delete
$response['width'] = (int) $meta['width'];
[4105] Fix | Delete
}
[4106] Fix | Delete
if ( isset( $meta['height'] ) ) {
[4107] Fix | Delete
$response['height'] = (int) $meta['height'];
[4108] Fix | Delete
}
[4109] Fix | Delete
}
[4110] Fix | Delete
[4111] Fix | Delete
if ( $meta && ( 'audio' === $type || 'video' === $type ) ) {
[4112] Fix | Delete
if ( isset( $meta['length_formatted'] ) ) {
[4113] Fix | Delete
$response['fileLength'] = $meta['length_formatted'];
[4114] Fix | Delete
$response['fileLengthHumanReadable'] = human_readable_duration( $meta['length_formatted'] );
[4115] Fix | Delete
}
[4116] Fix | Delete
[4117] Fix | Delete
$response['meta'] = array();
[4118] Fix | Delete
foreach ( wp_get_attachment_id3_keys( $attachment, 'js' ) as $key => $label ) {
[4119] Fix | Delete
$response['meta'][ $key ] = false;
[4120] Fix | Delete
[4121] Fix | Delete
if ( ! empty( $meta[ $key ] ) ) {
[4122] Fix | Delete
$response['meta'][ $key ] = $meta[ $key ];
[4123] Fix | Delete
}
[4124] Fix | Delete
}
[4125] Fix | Delete
[4126] Fix | Delete
$id = get_post_thumbnail_id( $attachment->ID );
[4127] Fix | Delete
if ( ! empty( $id ) ) {
[4128] Fix | Delete
list( $src, $width, $height ) = wp_get_attachment_image_src( $id, 'full' );
[4129] Fix | Delete
$response['image'] = compact( 'src', 'width', 'height' );
[4130] Fix | Delete
list( $src, $width, $height ) = wp_get_attachment_image_src( $id, 'thumbnail' );
[4131] Fix | Delete
$response['thumb'] = compact( 'src', 'width', 'height' );
[4132] Fix | Delete
} else {
[4133] Fix | Delete
$src = wp_mime_type_icon( $attachment->ID );
[4134] Fix | Delete
$width = 48;
[4135] Fix | Delete
$height = 64;
[4136] Fix | Delete
$response['image'] = compact( 'src', 'width', 'height' );
[4137] Fix | Delete
$response['thumb'] = compact( 'src', 'width', 'height' );
[4138] Fix | Delete
}
[4139] Fix | Delete
}
[4140] Fix | Delete
[4141] Fix | Delete
if ( function_exists( 'get_compat_media_markup' ) ) {
[4142] Fix | Delete
$response['compat'] = get_compat_media_markup( $attachment->ID, array( 'in_modal' => true ) );
[4143] Fix | Delete
}
[4144] Fix | Delete
[4145] Fix | Delete
if ( function_exists( 'get_media_states' ) ) {
[4146] Fix | Delete
$media_states = get_media_states( $attachment );
[4147] Fix | Delete
if ( ! empty( $media_states ) ) {
[4148] Fix | Delete
$response['mediaStates'] = implode( ', ', $media_states );
[4149] Fix | Delete
}
[4150] Fix | Delete
}
[4151] Fix | Delete
[4152] Fix | Delete
/**
[4153] Fix | Delete
* Filters the attachment data prepared for JavaScript.
[4154] Fix | Delete
*
[4155] Fix | Delete
* @since 3.5.0
[4156] Fix | Delete
*
[4157] Fix | Delete
* @param array $response Array of prepared attachment data. @see wp_prepare_attachment_for_js().
[4158] Fix | Delete
* @param WP_Post $attachment Attachment object.
[4159] Fix | Delete
* @param array|false $meta Array of attachment meta data, or false if there is none.
[4160] Fix | Delete
*/
[4161] Fix | Delete
return apply_filters( 'wp_prepare_attachment_for_js', $response, $attachment, $meta );
[4162] Fix | Delete
}
[4163] Fix | Delete
[4164] Fix | Delete
/**
[4165] Fix | Delete
* Enqueues all scripts, styles, settings, and templates necessary to use
[4166] Fix | Delete
* all media JS APIs.
[4167] Fix | Delete
*
[4168] Fix | Delete
* @since 3.5.0
[4169] Fix | Delete
*
[4170] Fix | Delete
* @global int $content_width
[4171] Fix | Delete
* @global wpdb $wpdb WordPress database abstraction object.
[4172] Fix | Delete
* @global WP_Locale $wp_locale WordPress date and time locale object.
[4173] Fix | Delete
*
[4174] Fix | Delete
* @param array $args {
[4175] Fix | Delete
* Arguments for enqueuing media scripts.
[4176] Fix | Delete
*
[4177] Fix | Delete
* @type int|WP_Post A post object or ID.
[4178] Fix | Delete
* }
[4179] Fix | Delete
*/
[4180] Fix | Delete
function wp_enqueue_media( $args = array() ) {
[4181] Fix | Delete
// Enqueue me just once per page, please.
[4182] Fix | Delete
if ( did_action( 'wp_enqueue_media' ) ) {
[4183] Fix | Delete
return;
[4184] Fix | Delete
}
[4185] Fix | Delete
[4186] Fix | Delete
global $content_width, $wpdb, $wp_locale;
[4187] Fix | Delete
[4188] Fix | Delete
$defaults = array(
[4189] Fix | Delete
'post' => null,
[4190] Fix | Delete
);
[4191] Fix | Delete
$args = wp_parse_args( $args, $defaults );
[4192] Fix | Delete
[4193] Fix | Delete
// We're going to pass the old thickbox media tabs to `media_upload_tabs`
[4194] Fix | Delete
// to ensure plugins will work. We will then unset those tabs.
[4195] Fix | Delete
$tabs = array(
[4196] Fix | Delete
// handler action suffix => tab label
[4197] Fix | Delete
'type' => '',
[4198] Fix | Delete
'type_url' => '',
[4199] Fix | Delete
'gallery' => '',
[4200] Fix | Delete
'library' => '',
[4201] Fix | Delete
);
[4202] Fix | Delete
[4203] Fix | Delete
/** This filter is documented in wp-admin/includes/media.php */
[4204] Fix | Delete
$tabs = apply_filters( 'media_upload_tabs', $tabs );
[4205] Fix | Delete
unset( $tabs['type'], $tabs['type_url'], $tabs['gallery'], $tabs['library'] );
[4206] Fix | Delete
[4207] Fix | Delete
$props = array(
[4208] Fix | Delete
'link' => get_option( 'image_default_link_type' ), // DB default is 'file'.
[4209] Fix | Delete
'align' => get_option( 'image_default_align' ), // Empty default.
[4210] Fix | Delete
'size' => get_option( 'image_default_size' ), // Empty default.
[4211] Fix | Delete
);
[4212] Fix | Delete
[4213] Fix | Delete
$exts = array_merge( wp_get_audio_extensions(), wp_get_video_extensions() );
[4214] Fix | Delete
$mimes = get_allowed_mime_types();
[4215] Fix | Delete
$ext_mimes = array();
[4216] Fix | Delete
foreach ( $exts as $ext ) {
[4217] Fix | Delete
foreach ( $mimes as $ext_preg => $mime_match ) {
[4218] Fix | Delete
if ( preg_match( '#' . $ext . '#i', $ext_preg ) ) {
[4219] Fix | Delete
$ext_mimes[ $ext ] = $mime_match;
[4220] Fix | Delete
break;
[4221] Fix | Delete
}
[4222] Fix | Delete
}
[4223] Fix | Delete
}
[4224] Fix | Delete
[4225] Fix | Delete
/**
[4226] Fix | Delete
* Allows showing or hiding the "Create Audio Playlist" button in the media library.
[4227] Fix | Delete
*
[4228] Fix | Delete
* By default, the "Create Audio Playlist" button will always be shown in
[4229] Fix | Delete
* the media library. If this filter returns `null`, a query will be run
[4230] Fix | Delete
* to determine whether the media library contains any audio items. This
[4231] Fix | Delete
* was the default behavior prior to version 4.8.0, but this query is
[4232] Fix | Delete
* expensive for large media libraries.
[4233] Fix | Delete
*
[4234] Fix | Delete
* @since 4.7.4
[4235] Fix | Delete
* @since 4.8.0 The filter's default value is `true` rather than `null`.
[4236] Fix | Delete
*
[4237] Fix | Delete
* @link https://core.trac.wordpress.org/ticket/31071
[4238] Fix | Delete
*
[4239] Fix | Delete
* @param bool|null $show Whether to show the button, or `null` to decide based
[4240] Fix | Delete
* on whether any audio files exist in the media library.
[4241] Fix | Delete
*/
[4242] Fix | Delete
$show_audio_playlist = apply_filters( 'media_library_show_audio_playlist', true );
[4243] Fix | Delete
if ( null === $show_audio_playlist ) {
[4244] Fix | Delete
$show_audio_playlist = $wpdb->get_var(
[4245] Fix | Delete
"
[4246] Fix | Delete
SELECT ID
[4247] Fix | Delete
FROM $wpdb->posts
[4248] Fix | Delete
WHERE post_type = 'attachment'
[4249] Fix | Delete
AND post_mime_type LIKE 'audio%'
[4250] Fix | Delete
LIMIT 1
[4251] Fix | Delete
"
[4252] Fix | Delete
);
[4253] Fix | Delete
}
[4254] Fix | Delete
[4255] Fix | Delete
/**
[4256] Fix | Delete
* Allows showing or hiding the "Create Video Playlist" button in the media library.
[4257] Fix | Delete
*
[4258] Fix | Delete
* By default, the "Create Video Playlist" button will always be shown in
[4259] Fix | Delete
* the media library. If this filter returns `null`, a query will be run
[4260] Fix | Delete
* to determine whether the media library contains any video items. This
[4261] Fix | Delete
* was the default behavior prior to version 4.8.0, but this query is
[4262] Fix | Delete
* expensive for large media libraries.
[4263] Fix | Delete
*
[4264] Fix | Delete
* @since 4.7.4
[4265] Fix | Delete
* @since 4.8.0 The filter's default value is `true` rather than `null`.
[4266] Fix | Delete
*
[4267] Fix | Delete
* @link https://core.trac.wordpress.org/ticket/31071
[4268] Fix | Delete
*
[4269] Fix | Delete
* @param bool|null $show Whether to show the button, or `null` to decide based
[4270] Fix | Delete
* on whether any video files exist in the media library.
[4271] Fix | Delete
*/
[4272] Fix | Delete
$show_video_playlist = apply_filters( 'media_library_show_video_playlist', true );
[4273] Fix | Delete
if ( null === $show_video_playlist ) {
[4274] Fix | Delete
$show_video_playlist = $wpdb->get_var(
[4275] Fix | Delete
"
[4276] Fix | Delete
SELECT ID
[4277] Fix | Delete
FROM $wpdb->posts
[4278] Fix | Delete
WHERE post_type = 'attachment'
[4279] Fix | Delete
AND post_mime_type LIKE 'video%'
[4280] Fix | Delete
LIMIT 1
[4281] Fix | Delete
"
[4282] Fix | Delete
);
[4283] Fix | Delete
}
[4284] Fix | Delete
[4285] Fix | Delete
/**
[4286] Fix | Delete
* Allows overriding the list of months displayed in the media library.
[4287] Fix | Delete
*
[4288] Fix | Delete
* By default (if this filter does not return an array), a query will be
[4289] Fix | Delete
* run to determine the months that have media items. This query can be
[4290] Fix | Delete
* expensive for large media libraries, so it may be desirable for sites to
[4291] Fix | Delete
* override this behavior.
[4292] Fix | Delete
*
[4293] Fix | Delete
* @since 4.7.4
[4294] Fix | Delete
*
[4295] Fix | Delete
* @link https://core.trac.wordpress.org/ticket/31071
[4296] Fix | Delete
*
[4297] Fix | Delete
* @param array|null $months An array of objects with `month` and `year`
[4298] Fix | Delete
* properties, or `null` (or any other non-array value)
[4299] Fix | Delete
* for default behavior.
[4300] Fix | Delete
*/
[4301] Fix | Delete
$months = apply_filters( 'media_library_months_with_files', null );
[4302] Fix | Delete
if ( ! is_array( $months ) ) {
[4303] Fix | Delete
$months = $wpdb->get_results(
[4304] Fix | Delete
$wpdb->prepare(
[4305] Fix | Delete
"
[4306] Fix | Delete
SELECT DISTINCT YEAR( post_date ) AS year, MONTH( post_date ) AS month
[4307] Fix | Delete
FROM $wpdb->posts
[4308] Fix | Delete
WHERE post_type = %s
[4309] Fix | Delete
ORDER BY post_date DESC
[4310] Fix | Delete
",
[4311] Fix | Delete
'attachment'
[4312] Fix | Delete
)
[4313] Fix | Delete
);
[4314] Fix | Delete
}
[4315] Fix | Delete
foreach ( $months as $month_year ) {
[4316] Fix | Delete
$month_year->text = sprintf(
[4317] Fix | Delete
/* translators: 1: Month, 2: Year. */
[4318] Fix | Delete
__( '%1$s %2$d' ),
[4319] Fix | Delete
$wp_locale->get_month( $month_year->month ),
[4320] Fix | Delete
$month_year->year
[4321] Fix | Delete
);
[4322] Fix | Delete
}
[4323] Fix | Delete
[4324] Fix | Delete
$settings = array(
[4325] Fix | Delete
'tabs' => $tabs,
[4326] Fix | Delete
'tabUrl' => add_query_arg( array( 'chromeless' => true ), admin_url( 'media-upload.php' ) ),
[4327] Fix | Delete
'mimeTypes' => wp_list_pluck( get_post_mime_types(), 0 ),
[4328] Fix | Delete
/** This filter is documented in wp-admin/includes/media.php */
[4329] Fix | Delete
'captions' => ! apply_filters( 'disable_captions', '' ),
[4330] Fix | Delete
'nonce' => array(
[4331] Fix | Delete
'sendToEditor' => wp_create_nonce( 'media-send-to-editor' ),
[4332] Fix | Delete
'setAttachmentThumbnail' => wp_create_nonce( 'set-attachment-thumbnail' ),
[4333] Fix | Delete
),
[4334] Fix | Delete
'post' => array(
[4335] Fix | Delete
'id' => 0,
[4336] Fix | Delete
),
[4337] Fix | Delete
'defaultProps' => $props,
[4338] Fix | Delete
'attachmentCounts' => array(
[4339] Fix | Delete
'audio' => ( $show_audio_playlist ) ? 1 : 0,
[4340] Fix | Delete
'video' => ( $show_video_playlist ) ? 1 : 0,
[4341] Fix | Delete
),
[4342] Fix | Delete
'oEmbedProxyUrl' => rest_url( 'oembed/1.0/proxy' ),
[4343] Fix | Delete
'embedExts' => $exts,
[4344] Fix | Delete
'embedMimes' => $ext_mimes,
[4345] Fix | Delete
'contentWidth' => $content_width,
[4346] Fix | Delete
'months' => $months,
[4347] Fix | Delete
'mediaTrash' => MEDIA_TRASH ? 1 : 0,
[4348] Fix | Delete
);
[4349] Fix | Delete
[4350] Fix | Delete
$post = null;
[4351] Fix | Delete
if ( isset( $args['post'] ) ) {
[4352] Fix | Delete
$post = get_post( $args['post'] );
[4353] Fix | Delete
$settings['post'] = array(
[4354] Fix | Delete
'id' => $post->ID,
[4355] Fix | Delete
'nonce' => wp_create_nonce( 'update-post_' . $post->ID ),
[4356] Fix | Delete
);
[4357] Fix | Delete
[4358] Fix | Delete
$thumbnail_support = current_theme_supports( 'post-thumbnails', $post->post_type ) && post_type_supports( $post->post_type, 'thumbnail' );
[4359] Fix | Delete
if ( ! $thumbnail_support && 'attachment' === $post->post_type && $post->post_mime_type ) {
[4360] Fix | Delete
if ( wp_attachment_is( 'audio', $post ) ) {
[4361] Fix | Delete
$thumbnail_support = post_type_supports( 'attachment:audio', 'thumbnail' ) || current_theme_supports( 'post-thumbnails', 'attachment:audio' );
[4362] Fix | Delete
} elseif ( wp_attachment_is( 'video', $post ) ) {
[4363] Fix | Delete
$thumbnail_support = post_type_supports( 'attachment:video', 'thumbnail' ) || current_theme_supports( 'post-thumbnails', 'attachment:video' );
[4364] Fix | Delete
}
[4365] Fix | Delete
}
[4366] Fix | Delete
[4367] Fix | Delete
if ( $thumbnail_support ) {
[4368] Fix | Delete
$featured_image_id = get_post_meta( $post->ID, '_thumbnail_id', true );
[4369] Fix | Delete
$settings['post']['featuredImageId'] = $featured_image_id ? $featured_image_id : -1;
[4370] Fix | Delete
}
[4371] Fix | Delete
}
[4372] Fix | Delete
[4373] Fix | Delete
if ( $post ) {
[4374] Fix | Delete
$post_type_object = get_post_type_object( $post->post_type );
[4375] Fix | Delete
} else {
[4376] Fix | Delete
$post_type_object = get_post_type_object( 'post' );
[4377] Fix | Delete
}
[4378] Fix | Delete
[4379] Fix | Delete
$strings = array(
[4380] Fix | Delete
// Generic.
[4381] Fix | Delete
'mediaFrameDefaultTitle' => __( 'Media' ),
[4382] Fix | Delete
'url' => __( 'URL' ),
[4383] Fix | Delete
'addMedia' => __( 'Add media' ),
[4384] Fix | Delete
'search' => __( 'Search' ),
[4385] Fix | Delete
'select' => __( 'Select' ),
[4386] Fix | Delete
'cancel' => __( 'Cancel' ),
[4387] Fix | Delete
'update' => __( 'Update' ),
[4388] Fix | Delete
'replace' => __( 'Replace' ),
[4389] Fix | Delete
'remove' => __( 'Remove' ),
[4390] Fix | Delete
'back' => __( 'Back' ),
[4391] Fix | Delete
/*
[4392] Fix | Delete
* translators: This is a would-be plural string used in the media manager.
[4393] Fix | Delete
* If there is not a word you can use in your language to avoid issues with the
[4394] Fix | Delete
* lack of plural support here, turn it into "selected: %d" then translate it.
[4395] Fix | Delete
*/
[4396] Fix | Delete
'selected' => __( '%d selected' ),
[4397] Fix | Delete
'dragInfo' => __( 'Drag and drop to reorder media files.' ),
[4398] Fix | Delete
[4399] Fix | Delete
// Upload.
[4400] Fix | Delete
'uploadFilesTitle' => __( 'Upload files' ),
[4401] Fix | Delete
'uploadImagesTitle' => __( 'Upload images' ),
[4402] Fix | Delete
[4403] Fix | Delete
// Library.
[4404] Fix | Delete
'mediaLibraryTitle' => __( 'Media Library' ),
[4405] Fix | Delete
'insertMediaTitle' => __( 'Add media' ),
[4406] Fix | Delete
'createNewGallery' => __( 'Create a new gallery' ),
[4407] Fix | Delete
'createNewPlaylist' => __( 'Create a new playlist' ),
[4408] Fix | Delete
'createNewVideoPlaylist' => __( 'Create a new video playlist' ),
[4409] Fix | Delete
'returnToLibrary' => __( '← Go to library' ),
[4410] Fix | Delete
'allMediaItems' => __( 'All media items' ),
[4411] Fix | Delete
'allDates' => __( 'All dates' ),
[4412] Fix | Delete
'noItemsFound' => __( 'No items found.' ),
[4413] Fix | Delete
'insertIntoPost' => $post_type_object->labels->insert_into_item,
[4414] Fix | Delete
'unattached' => __( 'Unattached' ),
[4415] Fix | Delete
'mine' => _x( 'Mine', 'media items' ),
[4416] Fix | Delete
'trash' => _x( 'Trash', 'noun' ),
[4417] Fix | Delete
'uploadedToThisPost' => $post_type_object->labels->uploaded_to_this_item,
[4418] Fix | Delete
'warnDelete' => __( "You are about to permanently delete this item from your site.\nThis action cannot be undone.\n 'Cancel' to stop, 'OK' to delete." ),
[4419] Fix | Delete
'warnBulkDelete' => __( "You are about to permanently delete these items from your site.\nThis action cannot be undone.\n 'Cancel' to stop, 'OK' to delete." ),
[4420] Fix | Delete
'warnBulkTrash' => __( "You are about to trash these items.\n 'Cancel' to stop, 'OK' to delete." ),
[4421] Fix | Delete
'bulkSelect' => __( 'Bulk select' ),
[4422] Fix | Delete
'trashSelected' => __( 'Move to Trash' ),
[4423] Fix | Delete
'restoreSelected' => __( 'Restore from Trash' ),
[4424] Fix | Delete
'deletePermanently' => __( 'Delete permanently' ),
[4425] Fix | Delete
'apply' => __( 'Apply' ),
[4426] Fix | Delete
'filterByDate' => __( 'Filter by date' ),
[4427] Fix | Delete
'filterByType' => __( 'Filter by type' ),
[4428] Fix | Delete
'searchLabel' => __( 'Search' ),
[4429] Fix | Delete
'searchMediaLabel' => __( 'Search media' ), // Backward compatibility pre-5.3.
[4430] Fix | Delete
'searchMediaPlaceholder' => __( 'Search media items...' ), // Placeholder (no ellipsis), backward compatibility pre-5.3.
[4431] Fix | Delete
'mediaFound' => __( 'Number of media items found: %d' ),
[4432] Fix | Delete
'mediaFoundHasMoreResults' => __( 'Number of media items displayed: %d. Scroll the page for more results.' ),
[4433] Fix | Delete
'noMedia' => __( 'No media items found.' ),
[4434] Fix | Delete
'noMediaTryNewSearch' => __( 'No media items found. Try a different search.' ),
[4435] Fix | Delete
[4436] Fix | Delete
// Library Details.
[4437] Fix | Delete
'attachmentDetails' => __( 'Attachment details' ),
[4438] Fix | Delete
[4439] Fix | Delete
// From URL.
[4440] Fix | Delete
'insertFromUrlTitle' => __( 'Insert from URL' ),
[4441] Fix | Delete
[4442] Fix | Delete
// Featured Images.
[4443] Fix | Delete
'setFeaturedImageTitle' => $post_type_object->labels->featured_image,
[4444] Fix | Delete
'setFeaturedImage' => $post_type_object->labels->set_featured_image,
[4445] Fix | Delete
[4446] Fix | Delete
// Gallery.
[4447] Fix | Delete
'createGalleryTitle' => __( 'Create gallery' ),
[4448] Fix | Delete
'editGalleryTitle' => __( 'Edit gallery' ),
[4449] Fix | Delete
'cancelGalleryTitle' => __( '← Cancel gallery' ),
[4450] Fix | Delete
'insertGallery' => __( 'Insert gallery' ),
[4451] Fix | Delete
'updateGallery' => __( 'Update gallery' ),
[4452] Fix | Delete
'addToGallery' => __( 'Add to gallery' ),
[4453] Fix | Delete
'addToGalleryTitle' => __( 'Add to gallery' ),
[4454] Fix | Delete
'reverseOrder' => __( 'Reverse order' ),
[4455] Fix | Delete
[4456] Fix | Delete
// Edit Image.
[4457] Fix | Delete
'imageDetailsTitle' => __( 'Image details' ),
[4458] Fix | Delete
'imageReplaceTitle' => __( 'Replace image' ),
[4459] Fix | Delete
'imageDetailsCancel' => __( 'Cancel edit' ),
[4460] Fix | Delete
'editImage' => __( 'Edit image' ),
[4461] Fix | Delete
[4462] Fix | Delete
// Crop Image.
[4463] Fix | Delete
'chooseImage' => __( 'Choose image' ),
[4464] Fix | Delete
'selectAndCrop' => __( 'Select and crop' ),
[4465] Fix | Delete
'skipCropping' => __( 'Skip cropping' ),
[4466] Fix | Delete
'cropImage' => __( 'Crop image' ),
[4467] Fix | Delete
'cropYourImage' => __( 'Crop your image' ),
[4468] Fix | Delete
'cropping' => __( 'Cropping…' ),
[4469] Fix | Delete
/* translators: 1: Suggested width number, 2: Suggested height number. */
[4470] Fix | Delete
'suggestedDimensions' => __( 'Suggested image dimensions: %1$s by %2$s pixels.' ),
[4471] Fix | Delete
'cropError' => __( 'There has been an error cropping your image.' ),
[4472] Fix | Delete
[4473] Fix | Delete
// Edit Audio.
[4474] Fix | Delete
'audioDetailsTitle' => __( 'Audio details' ),
[4475] Fix | Delete
'audioReplaceTitle' => __( 'Replace audio' ),
[4476] Fix | Delete
'audioAddSourceTitle' => __( 'Add audio source' ),
[4477] Fix | Delete
'audioDetailsCancel' => __( 'Cancel edit' ),
[4478] Fix | Delete
[4479] Fix | Delete
// Edit Video.
[4480] Fix | Delete
'videoDetailsTitle' => __( 'Video details' ),
[4481] Fix | Delete
'videoReplaceTitle' => __( 'Replace video' ),
[4482] Fix | Delete
'videoAddSourceTitle' => __( 'Add video source' ),
[4483] Fix | Delete
'videoDetailsCancel' => __( 'Cancel edit' ),
[4484] Fix | Delete
'videoSelectPosterImageTitle' => __( 'Select poster image' ),
[4485] Fix | Delete
'videoAddTrackTitle' => __( 'Add subtitles' ),
[4486] Fix | Delete
[4487] Fix | Delete
// Playlist.
[4488] Fix | Delete
'playlistDragInfo' => __( 'Drag and drop to reorder tracks.' ),
[4489] Fix | Delete
'createPlaylistTitle' => __( 'Create audio playlist' ),
[4490] Fix | Delete
'editPlaylistTitle' => __( 'Edit audio playlist' ),
[4491] Fix | Delete
'cancelPlaylistTitle' => __( '← Cancel audio playlist' ),
[4492] Fix | Delete
'insertPlaylist' => __( 'Insert audio playlist' ),
[4493] Fix | Delete
'updatePlaylist' => __( 'Update audio playlist' ),
[4494] Fix | Delete
'addToPlaylist' => __( 'Add to audio playlist' ),
[4495] Fix | Delete
'addToPlaylistTitle' => __( 'Add to Audio Playlist' ),
[4496] Fix | Delete
[4497] Fix | Delete
// Video Playlist.
[4498] Fix | Delete
'videoPlaylistDragInfo' => __( 'Drag and drop to reorder videos.' ),
[4499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function