web-dev-qa-db-ja.com

WordPress以外のデータベースからのデータのインポート WP

まったく異なるデータベーススタイルからWPにデータを移行しています。 WPがメタテーブルにkeyvalueのペアスタイルを使用していることを考えると、頭を折り返そうとしている主な問題は、どのようにメタデータをインポートするかです。

列データをkeyvalueのペアとしてインポートする方法はありますか?

1
dcolumbus

あなたはそれを達成するためにWordPressの中に関数やプラグインを並べるべきです。

まず、あなたのWordPressデータベースにテーブルを挿入することができます。

その後は、WordPressのポストストラクチャを十分に活用してください。インポートしたい既存の投稿をループします。

各投稿でwp_insert_post()を使ってWordPress投稿を作成します。この関数はあなたの新しい投稿のIDを返します。

あなたがあなたの投稿に追加したいメタデータのあらゆる部分が後で追加されます。それはこのようになります:

foreach ( $existingposts as $existingpost ) {

    $newPostData['post_date'] = $existingpost['post_date'];
    // and so on, make sure to populate all the fields except the ID parameter, as this one is given by WordPress

    $newPostID = wp_insert_post( $newPostData );

    add_post_meta( $newPostID, '_firstPostMeta', $existingpost['firstPostMeta'] );
    // and so on, every Meta at a time

}

一度にすべての投稿をループする前に、必ず自分の関数をテストしてください。サーバーのタイムアウトによる矛盾を避けるために、サーバーができることに応じて、既存の投稿のスタックを20または50のグループに分割することをお勧めします。

0
fischi