<?php /** * Server-side file upload handler from wp-plupload or other asynchronous upload methods. * * @package WordPress * @subpackage Administration */ if ( isset( $_REQUEST['action'] ) && 'upload-attachment' === $_REQUEST['action'] ) { define( 'DOING_AJAX', true ); } if ( ! defined( 'WP_ADMIN' ) ) { define( 'WP_ADMIN', true ); } if ( defined( 'ABSPATH' ) ) { require_once ABSPATH . 'wp-load.php'; } else { require_once dirname( __DIR__ ) . '/wp-load.php'; } require_once ABSPATH . 'wp-admin/admin.php'; header( 'Content-Type: text/plain; charset=' . get_option( 'blog_charset' ) ); if ( isset( $_REQUEST['action'] ) && 'upload-attachment' === $_REQUEST['action'] ) { require ABSPATH . 'wp-admin/includes/ajax-actions.php'; send_nosniff_header(); nocache_headers(); wp_ajax_upload_attachment(); die( '0' ); } if ( ! current_user_can( 'upload_files' ) ) { wp_die( __( 'Sorry, you are not allowed to upload files.' ) ); } // Just fetch the detail form for that attachment. if ( isset( $_REQUEST['attachment_id'] ) && (int) $_REQUEST['attachment_id'] && $_REQUEST['fetch'] ) { $id = (int) $_REQUEST['attachment_id']; $post = get_post( $id ); if ( 'attachment' !== $post->post_type ) { wp_die( __( 'Invalid post type.' ) ); } switch ( $_REQUEST['fetch'] ) { case 3: $thumb_url = wp_get_attachment_image_src( $id, 'thumbnail', true ); if ( $thumb_url ) { echo '<img class="pinkynail" src="' . esc_url( $thumb_url[0] ) . '" alt="" />'; } if ( current_user_can( 'edit_post', $id ) ) { echo '<a class="edit-attachment" href="' . esc_url( get_edit_post_link( $id ) ) . '" target="_blank">' . _x( 'Edit', 'media item' ) . '</a>'; } else { echo '<span class="edit-attachment">' . _x( 'Success', 'media item' ) . '</span>'; } // Title shouldn't ever be empty, but use filename just in case. $file = get_attached_file( $post->ID ); $title = $post->post_title ? $post->post_title : wp_basename( $file ); echo '<div class="filename new"><span class="title">' . esc_html( wp_html_excerpt( $title, 60, '…' ) ) . '</span></div>'; break; case 2: add_filter( 'attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2 ); echo get_media_item( $id, array( 'send' => false, 'delete' => true, ) ); break; default: add_filter( 'attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2 ); echo get_media_item( $id ); break; } exit; } check_admin_referer( 'media-form' ); $post_id = 0; if ( isset( $_REQUEST['post_id'] ) ) { $post_id = absint( $_REQUEST['post_id'] ); if ( ! get_post( $post_id ) || ! current_user_can( 'edit_post', $post_id ) ) { $post_id = 0; } } $id = media_handle_upload( 'async-upload', $post_id ); if ( is_wp_error( $id ) ) { printf( '<div class="error-div error">%s <strong>%s</strong><br />%s</div>', sprintf( '<button type="button" class="dismiss button-link" onclick="jQuery(this).parents(\'div.media-item\').slideUp(200, function(){jQuery(this).remove();});">%s</button>', __( 'Dismiss' ) ), sprintf( /* translators: %s: Name of the file that failed to upload. */ __( '“%s” has failed to upload.' ), esc_html( $_FILES['async-upload']['name'] ) ), esc_html( $id->get_error_message() ) ); exit; } if ( $_REQUEST['short'] ) { // Short form response - attachment ID only. echo $id; } else { // Long form response - big chunk of HTML. $type = $_REQUEST['type']; /** * Filters the returned ID of an uploaded attachment. * * The dynamic portion of the hook name, `$type`, refers to the attachment type, * such as 'image', 'audio', 'video', 'file', etc. * * @since 2.5.0 * * @param int $id Uploaded attachment ID. */ echo apply_filters( "async_upload_{$type}", $id ); }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
css | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
includes | Folder | 0755 |
|
|
js | Folder | 0755 |
|
|
maint | Folder | 0755 |
|
|
network | Folder | 0755 |
|
|
user | Folder | 0755 |
|
|
about.php | File | 23.29 KB | 0644 |
|
admin-ajax.php | File | 4.72 KB | 0644 |
|
admin-footer.php | File | 2.77 KB | 0644 |
|
admin-functions.php | File | 406 B | 0644 |
|
admin-header.php | File | 8.42 KB | 0644 |
|
admin-post.php | File | 1.63 KB | 0644 |
|
admin.php | File | 11.85 KB | 0644 |
|
async-upload.php | File | 3.74 KB | 0644 |
|
authorize-application.php | File | 9.62 KB | 0644 |
|
cXVlZW5zZmFtaWx5ZGVudGlzdHJ5LmNh.txt | File | 61 B | 0644 |
|
cXVlZW5zZmFtaWx5ZGVudGlzdHJ5LmNha.txt | File | 89 B | 0644 |
|
comment.php | File | 11.15 KB | 0644 |
|
credits.php | File | 13.07 KB | 0644 |
|
custom-background.php | File | 416 B | 0644 |
|
custom-header.php | File | 426 B | 0644 |
|
customize.php | File | 10.07 KB | 0644 |
|
d3d3LnF1ZWVuc2ZhbWlseWRlbnRpc3RyeS5jYQ==.txt | File | 61 B | 0644 |
|
edit-comments.php | File | 13.43 KB | 0644 |
|
edit-form-advanced.php | File | 28.29 KB | 0644 |
|
edit-form-blocks.php | File | 14.68 KB | 0644 |
|
edit-form-comment.php | File | 7.96 KB | 0644 |
|
edit-link-form.php | File | 6.09 KB | 0644 |
|
edit-tag-form.php | File | 9.89 KB | 0644 |
|
edit-tags.php | File | 21.43 KB | 0644 |
|
edit.php | File | 18.75 KB | 0644 |
|
erase-personal-data.php | File | 3.16 KB | 0644 |
|
error_log | File | 1.34 KB | 0644 |
|
export-personal-data.php | File | 3.13 KB | 0644 |
|
export.php | File | 10.71 KB | 0644 |
|
freedoms.php | File | 13.76 KB | 0644 |
|
import.php | File | 7.35 KB | 0644 |
|
index.php | File | 7 KB | 0644 |
|
install-helper.php | File | 5.89 KB | 0644 |
|
install.php | File | 16.51 KB | 0644 |
|
link-add.php | File | 711 B | 0644 |
|
link-manager.php | File | 4.12 KB | 0644 |
|
link-parse-opml.php | File | 2.59 KB | 0644 |
|
link.php | File | 2.67 KB | 0644 |
|
load-scripts.php | File | 1.65 KB | 0644 |
|
load-styles.php | File | 2.25 KB | 0644 |
|
media-new.php | File | 3.12 KB | 0644 |
|
media-upload.php | File | 3.4 KB | 0644 |
|
media.php | File | 5.47 KB | 0644 |
|
menu-header.php | File | 9.68 KB | 0644 |
|
menu.php | File | 14.19 KB | 0644 |
|
moderation.php | File | 307 B | 0644 |
|
ms-admin.php | File | 196 B | 0644 |
|
ms-delete-site.php | File | 4.15 KB | 0644 |
|
ms-edit.php | File | 216 B | 0644 |
|
ms-options.php | File | 223 B | 0644 |
|
ms-sites.php | File | 215 B | 0644 |
|
ms-themes.php | File | 217 B | 0644 |
|
ms-upgrade-network.php | File | 219 B | 0644 |
|
ms-users.php | File | 215 B | 0644 |
|
my-sites.php | File | 4.54 KB | 0644 |
|
nav-menus.php | File | 43.75 KB | 0644 |
|
network.php | File | 5.25 KB | 0644 |
|
options-discussion.php | File | 15.08 KB | 0644 |
|
options-general.php | File | 14.63 KB | 0644 |
|
options-head.php | File | 492 B | 0644 |
|
options-media.php | File | 6.15 KB | 0644 |
|
options-permalink.php | File | 18.82 KB | 0644 |
|
options-privacy.php | File | 7.89 KB | 0644 |
|
options-reading.php | File | 9.63 KB | 0644 |
|
options-writing.php | File | 8.42 KB | 0644 |
|
options.php | File | 12.48 KB | 0644 |
|
plugin-editor.php | File | 13.01 KB | 0644 |
|
plugin-install.php | File | 6.21 KB | 0644 |
|
plugins.php | File | 28.46 KB | 0644 |
|
post-new.php | File | 2.64 KB | 0644 |
|
post.php | File | 9.84 KB | 0644 |
|
press-this.php | File | 2.33 KB | 0644 |
|
privacy-policy-guide.php | File | 841 B | 0644 |
|
privacy.php | File | 11.67 KB | 0644 |
|
profile.php | File | 283 B | 0644 |
|
revision.php | File | 5.4 KB | 0644 |
|
setup-config.php | File | 15.44 KB | 0644 |
|
site-health-info.php | File | 5.65 KB | 0644 |
|
site-health.php | File | 5.25 KB | 0644 |
|
term.php | File | 2.2 KB | 0644 |
|
theme-editor.php | File | 14.68 KB | 0644 |
|
theme-install.php | File | 21.48 KB | 0644 |
|
themes.php | File | 43.78 KB | 0644 |
|
tools.php | File | 3.37 KB | 0644 |
|
update-core.php | File | 42.44 KB | 0644 |
|
update.php | File | 12.23 KB | 0644 |
|
upgrade-functions.php | File | 341 B | 0644 |
|
upgrade.php | File | 5.47 KB | 0644 |
|
upload.php | File | 13.67 KB | 0644 |
|
user-edit.php | File | 32.71 KB | 0644 |
|
user-new.php | File | 23.41 KB | 0644 |
|
users.php | File | 19.45 KB | 0644 |
|
widgets.php | File | 19.64 KB | 0644 |
|