Importer work.
git-svn-id: http://svn.automattic.com/wordpress/trunk@3098 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
10c71b6d01
commit
82e3412256
|
@ -1730,8 +1730,8 @@ function wp_shrink_dimensions($width, $height, $wmax = 128, $hmax = 96) {
|
|||
return array((int) ($width / $height * $hmax), $hmax);
|
||||
}
|
||||
|
||||
function wp_import_cleanup($file) {
|
||||
wp_delete_attachment($file['id']);
|
||||
function wp_import_cleanup($id) {
|
||||
wp_delete_attachment($id);
|
||||
}
|
||||
|
||||
function wp_import_upload_form($action) {
|
||||
|
|
|
@ -8,6 +8,8 @@ define('MTEXPORT', 'import.txt');
|
|||
class MT_Import {
|
||||
|
||||
var $posts = array ();
|
||||
var $file;
|
||||
var $id;
|
||||
var $mtnames = array ();
|
||||
var $newauthornames = array ();
|
||||
var $j = -1;
|
||||
|
@ -24,12 +26,8 @@ class MT_Import {
|
|||
function greet() {
|
||||
$this->header();
|
||||
?>
|
||||
<p>Howdy! We’re about to begin the process to import all of your Movable Type entries into WordPress. Before we get started, you need to edit this file (<code>import/mt.php</code>) and change one line so we know where to find your MT export file. To make this easy put the import file into the <code>wp-admin/import</code> directory. Look for the line that says:</p>
|
||||
<p><code>define('MTEXPORT', '');</code></p>
|
||||
<p>and change it to</p>
|
||||
<p><code>define('MTEXPORT', 'import.txt');</code></p>
|
||||
<p>You have to do this manually for security reasons.</p>
|
||||
<p>If you've done that and you’re all ready, <a href="<?php echo add_query_arg('step', 1) ?>">let's go</a>! Remember that the import process may take a minute or so if you have a large number of entries and comments. Think of all the rebuilding time you'll be saving once it's done. :)</p>
|
||||
<p>Howdy! We’re about to begin the process to import all of your Movable Type entries into WordPress. To begin, select a file to upload and click Import.</p>
|
||||
<?php wp_import_upload_form( add_query_arg('step', 1) ); ?>
|
||||
<p>The importer is smart enough not to import duplicates, so you can run this multiple times without worry if—for whatever reason—it doesn't finish. If you get an <strong>out of memory</strong> error try splitting up the import file into pieces. </p>
|
||||
<?php
|
||||
|
||||
|
@ -85,7 +83,7 @@ class MT_Import {
|
|||
|
||||
function get_entries() {
|
||||
set_magic_quotes_runtime(0);
|
||||
$importdata = file(MTEXPORT); // Read the file into an array
|
||||
$importdata = file($this->file); // Read the file into an array
|
||||
$importdata = implode('', $importdata); // squish it
|
||||
$importdata = preg_replace("/(\r\n|\n|\r)/", "\n", $importdata);
|
||||
$importdata = preg_replace("/\n--------\n/", "--MT-ENTRY--\n", $importdata);
|
||||
|
@ -152,7 +150,7 @@ class MT_Import {
|
|||
|
||||
$authors = $this->get_mt_authors();
|
||||
echo '<ol id="authors">';
|
||||
echo '<form action="?import=mt&step=2" method="post">';
|
||||
echo '<form action="?import=mt&step=2&id=' . $this->id . '" method="post">';
|
||||
$j = -1;
|
||||
foreach ($authors as $author) {
|
||||
++ $j;
|
||||
|
@ -169,13 +167,17 @@ class MT_Import {
|
|||
}
|
||||
|
||||
function select_authors() {
|
||||
if ('' != MTEXPORT && !file_exists(MTEXPORT))
|
||||
die("The file you specified does not seem to exist. Please check the path you've given.");
|
||||
if ('' == MTEXPORT)
|
||||
die("You must edit the MTEXPORT line as described on the <a href='import-mt.php'>previous page</a> to continue.");
|
||||
$file = wp_import_handle_upload();
|
||||
if ( isset($file['error']) ) {
|
||||
echo $file['error'];
|
||||
return;
|
||||
}
|
||||
$this->file = $file['file'];
|
||||
$this->id = $file['id'];
|
||||
|
||||
$this->get_entries();
|
||||
$this->mt_authors_form();
|
||||
wp_import_cleanup($this->id);
|
||||
}
|
||||
|
||||
function process_posts() {
|
||||
|
@ -401,6 +403,9 @@ class MT_Import {
|
|||
case 1 :
|
||||
$this->select_authors();
|
||||
break;
|
||||
case 2:
|
||||
echo "ID: {$_GET['id']}<br/>";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -137,7 +137,7 @@ class RSS_Import {
|
|||
$this->file = $file['file'];
|
||||
$this->get_posts();
|
||||
$this->import_posts();
|
||||
wp_import_cleanup($file);
|
||||
wp_import_cleanup($file['id']);
|
||||
|
||||
echo '<h3>All done. <a href="' . get_option('home') . '">Have fun!</a></h3>';
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue