特定のカテゴリのすべての投稿を変換して、代わりにpostmetaフラグを使用するようにスクリプトを作成しています(MySQLをテストしたところ、私のサイトと同じ大きさのサイトでは、クエリ時間を大幅に短縮できることがわかりました)。
投稿を変換するとき、カテゴリ内のすべての投稿を取得するだけの場合は、postmetaを追加してからカテゴリを削除します。これにより、カテゴリに投稿がなくなるまでその関数をリロードできます。
投稿から用語を削除するための適切な機能が見つかりません。投稿IDと用語タクソノミー+ IDを指定して、処理してもらいます。
私はまた、誰かがそれを知っている場合に変換を行うことができるプラグインにも興味があります。Scribuのプラグインで処理できる反対のものとは異なり、cat-> postmetaを実行するものは見つかりませんでした。
それをAPI経由で実行しますか、それともSQLクエリで実行しても問題ありませんか?難しくはありません。1つのクエリで新しいpostmeta値を挿入し、1つでポストカテゴリの関係を削除し、1つでカテゴリカウントを更新します。
—
Jan Fabry
間違いなくAPIを使いたいです。この場合、カテゴリ数などは考慮したくありません。wp_get_object_terms()/ wp_set_object_terms()を使用すると、用語の操作がかなり簡単になりますが、コアからの1つの関数によるソリューションを望んでいました。
—
jerclarke 2010年