web-dev-qa-db-ja.com

カスタム投稿タイプを相互接続する方法

合唱団、作曲家、指揮者、歌手についてのサイトを作りたいです。これまでのところ、私は "piece"のカスタム投稿タイプを作成する必要があると判断しました - どの曲も、聖歌隊、作曲家、指揮者、歌手に関連付けることができます。

私はこれをすべての「ピース」に割り当てられた分類法(タグ)で行うことができました。しかし、私も指揮者について書くことができる必要があります。それで、私は別の投稿タイプを作成する必要がありますか?

だから、今私は "piece"、 "conductor"、 "composer"の投稿タイプを持っています。そして私はそれらを相互接続するために Posts 2 Postsプラグイン を使うことができます。

しかし、場合によっては指揮者がソリストとして振る舞うかもしれません - そしてそれは私が "人"型を作成することができたように見えますが、とにかく私は "駒" < - (指揮者) - > "人"と "駒" < - (soloist) - > "the_same_person"とposts2posts。

実際には、私はこれらの投稿タイプが必要だと思います(私はいくつかのタグを使うべきですか?):ピース、コンダクター、作曲家、ソリスト、コレクション(CDまたはライブパフォーマンス)そしてカスタムフィールド(作成年、出版)を持つものが必要です。年など) - これが他の方法でも実現できることを願っています。カスタムフィールドをpieceに追加して、ここに "conductor_id"を入れることができると思います。

私は物事を過度に複雑にしますか?

どのようにこれを行うことができますか?

ありがとうございます。

UPDATE:ありがとう、scribu。私は間違っていました:posts2postsが必要なもののようです。

1
brownian

「piece」と「person」、および接続フィールド「role」の2つの投稿タイプを定義するだけで済みます。

https://github.com/scribu/wp-posts-to-posts/wiki/Connection-information を参照してください。

3
scribu