X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/38ca813a0e312e2768e5b9519f0415cd0aa84781..61343b82c4f0da4c68e4c6373daafff4a81efdd1:/wp-admin/includes/export.php diff --git a/wp-admin/includes/export.php b/wp-admin/includes/export.php index cfdc3dde..ae08c3c1 100644 --- a/wp-admin/includes/export.php +++ b/wp-admin/includes/export.php @@ -13,7 +13,7 @@ * * @since 2.5.0 */ -define( 'WXR_VERSION', '1.1' ); +define( 'WXR_VERSION', '1.2' ); /** * Generates the WXR export file for download @@ -117,13 +117,14 @@ function export_wp( $args = array() ) { * @since 2.1.0 * * @param string $str String to wrap in XML CDATA tag. + * @return string */ function wxr_cdata( $str ) { if ( seems_utf8( $str ) == false ) $str = utf8_encode( $str ); // $str = ent2ncr(esc_html($str)); - $str = "'; + $str = '', ']]]]>', $str ) . ']]>'; return $str; } @@ -237,13 +238,13 @@ function export_wp( $args = array() ) { global $wpdb; $authors = array(); - $results = $wpdb->get_results( "SELECT DISTINCT post_author FROM $wpdb->posts" ); + $results = $wpdb->get_results( "SELECT DISTINCT post_author FROM $wpdb->posts WHERE post_status != 'auto-draft'" ); foreach ( (array) $results as $result ) $authors[] = get_userdata( $result->post_author ); $authors = array_filter( $authors ); - foreach( $authors as $author ) { + foreach ( $authors as $author ) { echo "\t"; echo '' . $author->ID . ''; echo '' . $author->user_login . ''; @@ -278,7 +279,7 @@ function export_wp( $args = array() ) { * @since 2.3.0 */ function wxr_post_taxonomy() { - global $post; + $post = get_post(); $taxonomies = get_object_taxonomies( $post->post_type ); if ( empty( $taxonomies ) ) @@ -290,6 +291,13 @@ function export_wp( $args = array() ) { } } + function wxr_filter_postmeta( $return_me, $meta_key ) { + if ( '_edit_lock' == $meta_key ) + $return_me = true; + return $return_me; + } + add_filter( 'wxr_export_skip_postmeta', 'wxr_filter_postmeta', 10, 2 ); + echo '\n"; ?> @@ -324,7 +332,7 @@ function export_wp( $args = array() ) { - + @@ -363,7 +371,7 @@ function export_wp( $args = array() ) { - + post_content ) ); ?> post_excerpt ) ); ?> @@ -384,12 +392,15 @@ function export_wp( $args = array() ) { get_results( $wpdb->prepare( "SELECT * FROM $wpdb->postmeta WHERE post_id = %d", $post->ID ) ); - foreach( $postmeta as $meta ) : if ( $meta->meta_key != '_edit_lock' ) : ?> + foreach ( $postmeta as $meta ) : + if ( apply_filters( 'wxr_export_skip_postmeta', false, $meta->meta_key, $meta ) ) + continue; + ?> meta_key; ?> meta_value ); ?> - + get_results( $wpdb->prepare( "SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d AND comment_approved <> 'spam'", $post->ID ) ); foreach ( $comments as $c ) : ?>