X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/022dfbbbe3215917d84708eb09acca93b21ae9e0..6c8f14c09105d0afa4c1574215c59b5021040e76:/wp-admin/admin.php?import=%24id diff --git a/wp-admin/admin.php b/wp-admin/admin.php index 756cc480..bd2e5406 100644 --- a/wp-admin/admin.php +++ b/wp-admin/admin.php @@ -1,112 +1,232 @@ upgrade."), get_option('siteurl') . '/wp-admin/upgrade.php')); - -require_once(ABSPATH . 'wp-admin/admin-functions.php'); -require_once(ABSPATH . 'wp-admin/admin-db.php'); -require_once(ABSPATH . WPINC . '/registration-functions.php'); +if ( isset($_GET['import']) && !defined('WP_LOAD_IMPORTERS') ) + define('WP_LOAD_IMPORTERS', true); -auth_redirect(); +require_once(dirname(dirname(__FILE__)) . '/wp-load.php'); nocache_headers(); -update_category_cache(); - -wp_get_current_user(); - -$posts_per_page = get_settings('posts_per_page'); -$what_to_show = get_settings('what_to_show'); -$date_format = get_settings('date_format'); -$time_format = get_settings('time_format'); - -$wpvarstoreset = array('profile','redirect','redirect_url','a','popuptitle','popupurl','text', 'trackback', 'pingback'); -for ($i=0; $i 50 && mt_rand( 0, (int)( $c / 50 ) ) == 1 ) ) { + require_once( ABSPATH . WPINC . '/http.php' ); + $response = wp_remote_get( admin_url( 'upgrade.php?step=1' ), array( 'timeout' => 120, 'httpversion' => '1.1' ) ); + do_action( 'after_mu_upgrade', $response ); + unset($response); + } + unset($c); + } } -$xfn_js = $sack_js = $list_js = $cat_js = $dbx_js = $editing = false; +require_once(ABSPATH . 'wp-admin/includes/admin.php'); + +auth_redirect(); + +// Schedule trash collection +if ( !wp_next_scheduled('wp_scheduled_delete') && !defined('WP_INSTALLING') ) + wp_schedule_event(time(), 'daily', 'wp_scheduled_delete'); + +set_screen_options(); + +$date_format = get_option('date_format'); +$time_format = get_option('time_format'); -if (isset($_GET['page'])) { +wp_reset_vars(array('profile', 'redirect', 'redirect_url', 'a', 'text', 'trackback', 'pingback')); + +wp_enqueue_script( 'common' ); + +$editing = false; + +if ( isset($_GET['page']) ) { $plugin_page = stripslashes($_GET['page']); $plugin_page = plugin_basename($plugin_page); } -require(ABSPATH . '/wp-admin/menu.php'); +if ( isset( $_REQUEST['post_type'] ) && post_type_exists( $_REQUEST['post_type'] ) ) + $typenow = $_REQUEST['post_type']; +else + $typenow = ''; -// Handle plugin admin pages. -if (isset($plugin_page)) { - $page_hook = get_plugin_page_hook($plugin_page, $pagenow); +if ( isset( $_REQUEST['taxonomy'] ) && taxonomy_exists( $_REQUEST['taxonomy'] ) ) + $taxnow = $_REQUEST['taxonomy']; +else + $taxnow = ''; + +if ( WP_NETWORK_ADMIN ) + require(ABSPATH . 'wp-admin/network/menu.php'); +elseif ( WP_USER_ADMIN ) + require(ABSPATH . 'wp-admin/user/menu.php'); +else + require(ABSPATH . 'wp-admin/menu.php'); + +if ( current_user_can( 'manage_options' ) ) + @ini_set( 'memory_limit', apply_filters( 'admin_memory_limit', WP_MAX_MEMORY_LIMIT ) ); + +do_action('admin_init'); + +if ( isset($plugin_page) ) { + if ( !empty($typenow) ) + $the_parent = $pagenow . '?post_type=' . $typenow; + else + $the_parent = $pagenow; + if ( ! $page_hook = get_plugin_page_hook($plugin_page, $the_parent) ) { + $page_hook = get_plugin_page_hook($plugin_page, $plugin_page); + // backwards compatibility for plugins using add_management_page + if ( empty( $page_hook ) && 'edit.php' == $pagenow && '' != get_plugin_page_hook($plugin_page, 'tools.php') ) { + // There could be plugin specific params on the URL, so we need the whole query string + if ( !empty($_SERVER[ 'QUERY_STRING' ]) ) + $query_string = $_SERVER[ 'QUERY_STRING' ]; + else + $query_string = 'page=' . $plugin_page; + wp_redirect( admin_url('tools.php?' . $query_string) ); + exit; + } + } + unset($the_parent); +} + +$hook_suffix = ''; +if ( isset($page_hook) ) + $hook_suffix = $page_hook; +else if ( isset($plugin_page) ) + $hook_suffix = $plugin_page; +else if ( isset($pagenow) ) + $hook_suffix = $pagenow; + +set_current_screen(); +// Handle plugin admin pages. +if ( isset($plugin_page) ) { if ( $page_hook ) { + do_action('load-' . $page_hook); if (! isset($_GET['noheader'])) - require_once(ABSPATH . '/wp-admin/admin-header.php'); - + require_once(ABSPATH . 'wp-admin/admin-header.php'); + do_action($page_hook); } else { - if ( validate_file($plugin_page) ) { - die(__('Invalid plugin page')); - } - - if (! file_exists(ABSPATH . "wp-content/plugins/$plugin_page")) - die(sprintf(__('Cannot load %s.'), htmlentities($plugin_page))); + if ( validate_file($plugin_page) ) + wp_die(__('Invalid plugin page')); - if (! isset($_GET['noheader'])) - require_once(ABSPATH . '/wp-admin/admin-header.php'); - - include(ABSPATH . "wp-content/plugins/$plugin_page"); + if ( !( file_exists(WP_PLUGIN_DIR . "/$plugin_page") && is_file(WP_PLUGIN_DIR . "/$plugin_page") ) && !( file_exists(WPMU_PLUGIN_DIR . "/$plugin_page") && is_file(WPMU_PLUGIN_DIR . "/$plugin_page") ) ) + wp_die(sprintf(__('Cannot load %s.'), htmlentities($plugin_page))); + + do_action('load-' . $plugin_page); + + if ( !isset($_GET['noheader'])) + require_once(ABSPATH . 'wp-admin/admin-header.php'); + + if ( file_exists(WPMU_PLUGIN_DIR . "/$plugin_page") ) + include(WPMU_PLUGIN_DIR . "/$plugin_page"); + else + include(WP_PLUGIN_DIR . "/$plugin_page"); } - + include(ABSPATH . 'wp-admin/admin-footer.php'); exit(); } else if (isset($_GET['import'])) { - + $importer = $_GET['import']; if ( ! current_user_can('import') ) wp_die(__('You are not allowed to import.')); if ( validate_file($importer) ) { - die(__('Invalid importer.')); + wp_redirect( admin_url( 'import.php?invalid=' . $importer ) ); + exit; } - - if (! file_exists(ABSPATH . "wp-admin/import/$importer.php")) - die(__('Cannot load importer.')); - - include(ABSPATH . "wp-admin/import/$importer.php"); - $parent_file = 'import.php'; + if ( ! isset($wp_importers[$importer]) || ! is_callable($wp_importers[$importer][2]) ) { + wp_redirect( admin_url( 'import.php?invalid=' . $importer ) ); + exit; + } + + do_action( 'load-importer-' . $importer ); + + $parent_file = 'tools.php'; + $submenu_file = 'import.php'; $title = __('Import'); - + if (! isset($_GET['noheader'])) require_once(ABSPATH . 'wp-admin/admin-header.php'); - require_once(ABSPATH . 'wp-admin/upgrade-functions.php'); + require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); define('WP_IMPORTING', true); - kses_init_filters(); // Always filter imported data with kses. + + if ( apply_filters( 'force_filtered_html_on_import', false ) ) + kses_init_filters(); // Always filter imported data with kses on multisite. call_user_func($wp_importers[$importer][2]); - + include(ABSPATH . 'wp-admin/admin-footer.php'); + // Make sure rules are flushed + flush_rewrite_rules(false); + exit(); +} else { + do_action("load-$pagenow"); + // Backwards compatibility with old load-page-new.php, load-page.php, + // and load-categories.php actions. + if ( $typenow == 'page' ) { + if ( $pagenow == 'post-new.php' ) + do_action( 'load-page-new.php' ); + elseif ( $pagenow == 'post.php' ) + do_action( 'load-page.php' ); + } elseif ( $pagenow == 'edit-tags.php' ) { + if ( $taxnow == 'category' ) + do_action( 'load-categories.php' ); + elseif ( $taxnow == 'link_category' ) + do_action( 'load-edit-link-categories.php' ); + } } -?> +if ( !empty($_REQUEST['action']) ) + do_action('admin_action_' . $_REQUEST['action']);