Allow uploads outside of the WP path and custom URLs for the same.

git-svn-id: http://svn.automattic.com/wordpress/trunk@6780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
matt 2008-02-11 06:35:24 +00:00
parent 9aab2ce97a
commit d9738d6cfb
3 changed files with 19 additions and 5 deletions

View File

@ -238,6 +238,7 @@ function populate_options() {
// 2.5
add_option('show_avatars', '1');
add_option('avatar_rating', 'G');
add_option('upload_url_path', '');
// Delete unused options
$unusedoptions = array ('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing');

View File

@ -23,6 +23,13 @@ include('admin-header.php');
<?php _e('Default is <code>wp-content/uploads</code>'); ?>
</td>
</tr>
<tr valign="top">
<th scope="row"><?php _e('Full URL path to files (optional)'); ?>:</th>
<td><input name="upload_url_path" type="text" id="upload_url_path" class="code" value="<?php echo attribute_escape( get_option('upload_url_path')); ?>" size="40" />
</td>
</tr>
<tr>
<td></td>
<td>
@ -43,7 +50,7 @@ include('admin-header.php');
<p class="submit">
<input type="hidden" name="action" value="update" />
<input type="hidden" name="page_options" value="hack_file,use_linksupdate,uploads_use_yearmonth_folders,upload_path" />
<input type="hidden" name="page_options" value="hack_file,use_linksupdate,uploads_use_yearmonth_folders,upload_path,upload_url_path" />
<input type="submit" name="Submit" value="<?php _e('Update Options &raquo;') ?>" />
</p>
</form>

View File

@ -1026,10 +1026,16 @@ function wp_mkdir_p( $target ) {
// Returns an array containing the current upload directory's path and url, or an error message.
function wp_upload_dir( $time = NULL ) {
$siteurl = get_option( 'siteurl' );
//prepend ABSPATH to $dir and $siteurl to $url if they're not already there
$path = str_replace( ABSPATH, '', trim( get_option( 'upload_path' ) ) );
$dir = ABSPATH . $path;
$url = trailingslashit( $siteurl ) . $path;
$upload_path = $dir = get_option( 'upload_path' );
if ( $upload_path != realpath( $upload_path ) ) { // not an absolute path
//prepend ABSPATH to $dir and $siteurl to $url if they're not already there
$path = str_replace( ABSPATH, '', trim( $upload_path ) );
$dir = ABSPATH . $path;
}
if ( !$url = get_option( 'upload_url_path' ) )
$url = trailingslashit( $siteurl ) . $path;
if ( $dir == ABSPATH ) // the option was empty
$dir = ABSPATH . 'wp-content/uploads';