私は現在、不動産業者向けのオブジェクトリストを構築しており、すべてのオブジェクトを「objekt」というカスタム投稿タイプにローカルにキャッシュしています。パーマリンクは「objekt」に書き換えられています。
サーバーのルートにwp-fetch-items.php
、システム内の新しいオブジェクトの時点で不動産業者アプリケーションが ping するファイルがあります。これにより、タイプ「objekt」のすべての投稿が削除され、XML ファイルを通過して、すべてのオブジェクトがシステムに再度追加されます。
すべてが完全に正常に機能しますが、投稿が初めて作成された場合でも、投稿は URL で -2 を取得し続け、名前が少しでも似ているものはありません。
たとえばwp_insert_post
、名前を使用して挿入したオブジェクト152912
は、post_name を取得し152912-2
ます。
次のコードでオブジェクトを作成します。
$insertedPost = wp_insert_post(array(
'post_author' => 1,
'post_type' => 'objekt',
'ping_status' => 'closed',
'post_status' => 'publish',
'post_name' => $objectData['title'],
'post_title' => $objectData['title']
), false);
それらが作成される前に、タイプが「objekt」のすべての投稿をループし、次のコードを使用してそれらを削除します。
wp_delete_post(get_the_ID(), true);
データベースからオブジェクトを完全に削除するために、2 番目のパラメーターとして true を具体的に追加しました。すべての検索で、オブジェクトが何も残っていないことが証明されます。
また、このコードを使用して削除後にパーマリンクをフラッシュしようとしましたが、状況を改善するために何もしません:
global $wp_rewrite;
$wp_rewrite->flush_rules();
この問題を経験したことがありますか?また、その解決方法を知っていますか? 何が原因かわかる方回答お願いします!
前もって感謝します、ジョナサン