どのような場面を想定されているのかが汲み取りきれていませんが、以下のプラグインがご希望の形に沿うかもしれません。
よろしければお試しください。
投稿ありがとうございます。
いろいろと試した結果、これらのプラグインは、
・カスタム投稿タイプの出力には有料版が必要(インポートにも必要)
・1年で299ドルと、ちょっと円安で高いな~
と思いまして、引き続き、安めのプラグインを探してみます。
よろしくです。
ことりさんが、「どのような場面を想定されているのかが汲み取りきれていません」とお書きですが、そこのところをもう少し示してもらえれば答えやすくなるかなと思いました。
なお、全記事上書きするのなら、単純にインポート直前に全記事をゴミ箱に入れてから完全削除してその後インポートすれば、全てインポート後のものに置き換わりますよ。
こんにちは。
状況としましては、数千ページを、毎日更新する予定です。
数千ページを全部削除 → インポート、でもいいと思いますが、削除→完全に削除→全ページをアップデート、という形になってしまいますので、3段階を1段階にできればと思っています。
CSVは使えなくてもいいです。ACFも使いません。
よろしくお願いします。
このトピックはWordPress Importerについての事で正しいですか?
WordPress Importerは同一のタイトルと投稿日の投稿が存在する場合、その投稿はインポートされません。
『id番号』というのが投稿IDの事であるならば、投稿IDの重複でデータを複製するのではなく、タイトルが変更された投稿は別の投稿として追加されますし、投稿日が変更された投稿は同一タイトルで別の投稿として追加されます。
こんにちは。
その通りです。よって、記事の修正をする場合には、1つ1つ管理ページで編集するしかありません。
以下のコードをテーマのfunctions.php
に追加してインポートしてみてください。
タイトルや投稿日が同一の投稿の重複を無視しインポートできるようにして、インポート時にインポート対象の投稿を削除してインポートする流れです。
wp_delete_post()
は投稿が存在しなくてもエラーにはならないので、その投稿が存在するかどうかのチェックは行っていません。
実行前に念のためデータベースのバックアップを取っておいた方が無難です。
// WordPress Importerで投稿の重複を無視
add_filter( 'wp_import_existing_post', function() {
return false;
} );
// WordPress Importerで既存の投稿を削除してからインポート
add_filter( 'wp_import_post_data_processed', function( $postdata, $post ) {
wp_delete_post( $post['post_id'], true );
return $postdata;
}, 10, 2 );