WordPress 4.2.5-scripts
[autoinstalls/wordpress.git] / wp-admin / export.php
index 8257b5187b78ccc0e3d4ff5d7cdc70beee55e554..daba6e360e2df707b04779467d8e06b8ba7bdc7b 100644 (file)
@@ -7,19 +7,23 @@
  */
 
 /** Load WordPress Bootstrap */
-require_once ('admin.php');
+require_once( dirname( __FILE__ ) . '/admin.php' );
 
 if ( !current_user_can('export') )
        wp_die(__('You do not have sufficient permissions to export the content of this site.'));
 
 /** Load WordPress export API */
-require_once('./includes/export.php');
+require_once( ABSPATH . 'wp-admin/includes/export.php' );
 $title = __('Export');
 
-function add_js() {
+/**
+ * Display JavaScript on the page.
+ *
+ * @since 3.5.0
+ */
+function export_add_js() {
 ?>
 <script type="text/javascript">
-//<![CDATA[
        jQuery(document).ready(function($){
                var form = $('#export-filters'),
                        filters = form.find('.export-filters');
@@ -32,11 +36,10 @@ function add_js() {
                        }
                });
        });
-//]]>
 </script>
 <?php
 }
-add_action( 'admin_head', 'add_js' );
+add_action( 'admin_head', 'export_add_js' );
 
 get_current_screen()->add_help_tab( array(
        'id'      => 'overview',
@@ -47,16 +50,17 @@ get_current_screen()->add_help_tab( array(
 
 get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
-       '<p>' . __('<a href="http://codex.wordpress.org/Tools_Export_Screen" target="_blank">Documentation on Export</a>') . '</p>' .
-       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+       '<p>' . __('<a href="https://codex.wordpress.org/Tools_Export_Screen" target="_blank">Documentation on Export</a>') . '</p>' .
+       '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
 );
 
+// If the 'download' URL parameter is set, a WXR export file is baked and returned.
 if ( isset( $_GET['download'] ) ) {
        $args = array();
 
        if ( ! isset( $_GET['content'] ) || 'all' == $_GET['content'] ) {
                $args['content'] = 'all';
-       } else if ( 'posts' == $_GET['content'] ) {
+       } elseif ( 'posts' == $_GET['content'] ) {
                $args['content'] = 'post';
 
                if ( $_GET['cat'] )
@@ -72,7 +76,7 @@ if ( isset( $_GET['download'] ) ) {
 
                if ( $_GET['post_status'] )
                        $args['status'] = $_GET['post_status'];
-       } else if ( 'pages' == $_GET['content'] ) {
+       } elseif ( 'pages' == $_GET['content'] ) {
                $args['content'] = 'page';
 
                if ( $_GET['page_author'] )
@@ -89,12 +93,31 @@ if ( isset( $_GET['download'] ) ) {
                $args['content'] = $_GET['content'];
        }
 
+       /**
+        * Filter the export args.
+        *
+        * @since 3.5.0
+        *
+        * @param array $args The arguments to send to the exporter.
+        */
+       $args = apply_filters( 'export_args', $args );
+
        export_wp( $args );
        die();
 }
 
-require_once ('admin-header.php');
+require_once( ABSPATH . 'wp-admin/admin-header.php' );
 
+/**
+ * Create the date options fields for exporting a given post type.
+ *
+ * @global wpdb      $wpdb      WordPress database abstraction object.
+ * @global WP_Locale $wp_locale Date and Time Locale object.
+ *
+ * @since 3.1.0
+ *
+ * @param string $post_type The post type. Default 'post'.
+ */
 function export_date_options( $post_type = 'post' ) {
        global $wpdb, $wp_locale;
 
@@ -120,7 +143,6 @@ function export_date_options( $post_type = 'post' ) {
 ?>
 
 <div class="wrap">
-<?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?></h2>
 
 <p><?php _e('When you click the button below WordPress will create an XML file for you to save to your computer.'); ?></p>
@@ -128,7 +150,7 @@ function export_date_options( $post_type = 'post' ) {
 <p><?php _e('Once you&#8217;ve saved the download file, you can use the Import function in another WordPress installation to import the content from this site.'); ?></p>
 
 <h3><?php _e( 'Choose what to export' ); ?></h3>
-<form action="" method="get" id="export-filters">
+<form method="get" id="export-filters">
 <input type="hidden" name="download" value="true" />
 <p><label><input type="radio" name="content" value="all" checked="checked" /> <?php _e( 'All content' ); ?></label></p>
 <p class="description"><?php _e( 'This will contain all of your posts, pages, comments, custom fields, terms, navigation menus and custom posts.' ); ?></p>
@@ -204,8 +226,17 @@ function export_date_options( $post_type = 'post' ) {
 <p><label><input type="radio" name="content" value="<?php echo esc_attr( $post_type->name ); ?>" /> <?php echo esc_html( $post_type->label ); ?></label></p>
 <?php endforeach; ?>
 
-<?php submit_button( __('Download Export File'), 'secondary' ); ?>
+<?php
+/**
+ * Fires after the export filters form.
+ *
+ * @since 3.5.0
+ */
+do_action( 'export_filters' );
+?>
+
+<?php submit_button( __('Download Export File') ); ?>
 </form>
 </div>
 
-<?php include('admin-footer.php'); ?>
+<?php include( ABSPATH . 'wp-admin/admin-footer.php' ); ?>