2012-03-28 6 views
0

私はwordpressで最新のWebサイトを作成しています。古いWebサイトから.docファイル(約200)をすべてインポートし、Wordpress Webサイトの投稿にしたいと思います。 この一括インポートを行う方法や、それぞれをコピーして貼り付ける唯一の方法です。長い時間がかかります。WordPressに.docファイルをインポートする

答えて

1

これを行う方法はありますが、わかっている限り、それは簡単ではありません。 私は一度それに苦労しましたが、最後にそれを達成することができました。

理由はWORD * .DOCが複雑なフォーマットであり、さらに、単純なコピー&貼り付けが問題(その実際のコピーも書式設定など)

あなたはPHPでCOMインターフェイスを使用する必要があり、ターンを作ることができるということですDOCをTXTファイルまたは文字列に変換し、wp_insert_post($my_post);

で投稿を作成すると、DOCが開きます。

その後
$filename="file.doc"; 
$TXTfilename = $filename . ".txt"; 
$word = new COM("word.application") or die("Unable to instantiate Word object"); 
$word->Documents->Open($filename); 
$word->Documents[1]->SaveAs($TXTfilename ,2);// '2' for txt format 
$word->Documents[1]->Close(false); 
$word->Quit(); 
$word->Release(); 
$word = NULL; 
unset($word); 
$my_doc_string = file_get_contents($TXTfilename); //write file 
unlink($TXTfilename); 

、いずれかのtxtファイルを読み込み、または同じ機能であれば、直接my_doc_string $を使用します(あなたが大部分をループする必要があります)..:

$title_p = 'mypost no'.$i; 
     $my_post = array(
     'post_title' => $title_p, 
     'post_content' => $my_doc_string, 
     'post_status' => 'publish', 
     'post_author' => 1 
    ); 
     $post_id = wp_insert_post($my_post); 
    wp_insert_post($my_post); 

注:COMインターフェース、私の知る限りでは、唯一のPHPのWINDOWSのvesionで提供されています。また、MS WORDをインストールする必要があります...

あなたのためにいくつかのより多くの読書:

http://php.net/manual/en/book.com.php

http://docstore.mik.ua/orelly/webprog/php/ch15_03.htm

http://www.gsdesign.ro/blog/extracting-text-from-word-documents-in-php-with-com-objects/

EDIT I -

もう一度あなたの質問を読んだ後 - なぜあなたはDOCファイルを必要としない - あなたはOLDウェブサイトを持っている場合は?私はこのプラグインにつまずいてきた今日、それはあるかもしれない - EDIT II

- 信じられないほど - (しかし、HTMLにOLDウェブサイトは、ドキュメント形式で同じコンテンツを持っている場合)は、HTMLパーサーであることを行うことができるかもしれません私はそれを試していませんでしたが、いくつかの助けてください。

http://wordpress.org/extend/plugins/auto-poster/screenshots/

+0

私はプラグインに疲れましたが、うまく機能しませんでした。私はワードプレスの最新バージョンを使用している可能性があります。もしあなたが他のシンプルなアイデアを持っているなら、それはすばらしいでしょう。それ以外の場合は、 'COMインターフェイスをPHPで使用する'という意味ですか?それ、どうやったら出来るの?コードはどこに置くのですか? – LTech

+0

http://php.net/manual/en/book.com.php –

+0

一度COMインターフェイスを使用したら、どのようにすべてのファイルをWordPressにインポートできますか?これは非常に複雑で、コピー&ペースト(350 docファイル)が迅速になりますか? – LTech

0

リットルは出版のためのワードプレスのエディタにWord文書をインポートすることができますプラグインhttps://wordpress.org/plugins/mammoth-docx-converter/をダウンロードしました。フォーマットマッピングは100%ではありませんが、基本的なものです。私が今必要とするのは、ポスト・コンテンツから特定のキーワードを使用してインポートすると、特定のドキュメント(カスタム・ポスト)に関連付けられたメタデータをメタ・ボックスに非同期で移入できることだけです。私はまた、ドキュメントの特定の段落(2番目の段落)から自動的に抜粋を生成しようとしています。私はwpのすべてのインポートプラグインについて読んで、それは私が望むものに非常に近いが、実際には同じ上記の操作を自動化します。私は自分のウェブサイトからエクスポートされたコンテンツを使用してWRX仕様を使用してXMLファイルを作成し、その後テスト目的でアップロードすることができましたが、それは本当に達成したいものではありません。とにかくwpのすべてのインポートプラグインは私が欲しいものをするためにカスタマイズすることができますか?

私はまた、あなたのPHPのアプローチがかなり適切であると私はそれが私とそれが私の目標を行うために必要なものに適しているかもしれません。重要なのは、文書という単語をポストとして自動的にインポートして、書式設定をそのままにしてから、関連するメタデータを自動的に非同期的に読み込むことです。上記のPHP COMコードに基づいて推奨事項はありますか?

関連する問題