web-dev-qa-db-ja.com

テレビ番組データベース - それを構築するための最良の方法は?

私はこのURLフォーマットを持つWordpressでテレビ番組データベースを作りたいです。

/tvshows/friends/01/12/
  • /tvshows/はすべてのシリーズをリストします
  • /tvshows/friends/は、Friends TV Showで利用可能なすべての季節をリストします。
  • /tvshows/friends/01/はシーズン1からの友達のすべてのエピソードをリストします。
  • /tvshows/friends/01/12/は、第1シーズンの第12話の情報を表示します

そして、ここで私が考えたさまざまな方法があります:

1)私の頭に浮かんだ最初のアイデアは、Pagesを作成してそれに応じてをネストすることです。それから3つの異なるページテンプレート(TVShow.php、Season.phpおよびEpisode.php)を作成し、それに応じて各ページのスタイルを設定します。主な欠点は、4シーズンと25エピソード(合計20,000ページ)の200シリーズがあると、すべてを更新して見つけるのが完全に面倒になることです。 (もう一つの欠点はRSSフィードですが、これはプラグインを通して解決できます)

TV SHows - Page-based

2)同僚の中にはCustom Postsを使うように勧めている人もいますが、これらは階層構造を持たず、mod_rewriteを使ってURLを作ることができますがPagesを使うよりももっと面倒なことでしょう。 ( このプラグイン は私が階層的な組織を作成する方法を理解することはできませんが、UIを通してカスタム投稿を管理します)

3)最後のアイデアは、それらをnormal PostsにしてからSerieの名前、季節、エピソードで分類し、すべてのカスタム投稿の煩わしさを避け、単純なWordpress API関数を使ってすべてを一覧表示することです。 。

これらは私が考えることができる最良の/可能な方法です、+ 500ページがあると痛みを伴う方法でスケーラブルですがページベースのオプションが最も適しているかもしれません。

これを整理する方法についてのアイデア、提案はありますか?

前もって感謝します! :)

3
Xavi Esteve

まず、組み込みの投稿タイプpostpageではこれを行わないでください。カスタム投稿タイプを使用してください。

例:moviesおよびseries。ここで、moviesは非階層ですが、seriesはです。

register_post_type() を使用し、hierarchicaltrueに設定します(デフォルト:false)。 with_frontを追加するためにrewrite引数> /series/を見てください。

それからいくつかのテンプレートを追加します。

  • series-list.php、
  • series-detail.php、
  • series-season.php、
  • series-episode.php ...
2
kaiser

Justin Tadlockは、カスタム分類法を使用して同様のことを達成する映画データベースを作成し、チュートリアルで説明しています here

3
Carson