web-dev-qa-db-ja.com

カスタムフィールドから適切な著者への著者情報の転送

私が再設計しているWordPressサイトには、約30人の異なる作者による約1.400の投稿があります。残念ながら、投稿の作者はこれまでのところ投稿内のカスタムフィールドとして入力されており、WPでは別の投稿者としては入力されていません。

これを '適切な方法'に転送したいと思います。各投稿には著者が添付されています。 すべて検索

すべての投稿を調べ、その投稿者を含むカスタムフィールドを検索してその投稿者を作成してから、その投稿をその投稿者にリンクできるスクリプトを知っている人はいますか。 (私は知っている、ロングショット...)

それは可能でさえあるか、または1.400の投稿を通過してそれらを手動で変更することとは別の方法がありますか?

1
Squrler

あなたの特定の設定を知らないことはこれをかなりトリッキーにします...しかしここにあなたの時間を節約するかもしれない代替案のいくつかのアイデアがあります:

そのままにしておく

これらの作者が実際に最初からこのサイトのユーザーではない場合は、何も変更しないでください。検索を容易にするためだけに、非ユーザーをユーザーに変えるべきではありません。非常に多くの非ユーザーユーザーアカウントを作成すると、悪意のある訪問者にとってその可能性のある多くのエントリポイントが開かれます。

分類法を作成する

繰り返しますが、これらの作者は実際にはユーザーではないと仮定します...

カスタムの "Authors"タクソノミを作成し、そこに著者名をダンプします。分類データは、スタイルの変更、属性の追加などのテーマで使用するのが非常に簡単です。また、アーカイブページや検索機能も提供されるため、作成者名でインデックスを付けることができます。

長い道のり

これらの作者が絶対にユーザーになる必要があるのであれば...あなたにはたくさんの仕事があります。 phpMyAdminを使っていくつかのクエリを実行することをお勧めします。

  1. クエリを実行してすべての著者名のリストを取得する
  2. 著者名ごとに、その著者が存在するかどうかを確認するためにクエリを実行します。
  3. 著者が存在しない場合は、クエリを実行してその著者のダミー使用を作成します。

はい、それは時間がかかります...しかし、私はあなたがあなたの1,400の異なる投稿に対して1,400の異なる作者を持っていないことを望みます。あなたの最初のクエリはたぶん100かそこらを返すべきです(うまくいけばあなたは本当に100人の異なる作者を持っていない!)...それは間違いなくあなたにしばらく時間を節約するべきです!

1
EAMann