メインコンテンツにスキップ

グループステージ

SportsPress Pro のトーナメントには、ノックアウトブラケットとともにグループステージを含めることができます。グループステージは、トーナメント投稿にリンクされた標準のリーグテーブルを使用します。リンクされたテーブルが存在する場合、トーナメントページのブラケットの下の**グループ**セクションに表示されます。

今日アップデートされました

グループステージ

SportsPress Pro のトーナメントには、ノックアウトブラケットとともにグループステージを含めることができます。グループステージは、トーナメント投稿にリンクされた標準のリーグテーブルを使用します。リンクされたテーブルが存在する場合、トーナメントページのブラケットの下のグループセクションに表示されます。

グループステージの仕組み

グループステージは別のトーナメント形式ではありません。トーナメントの投稿 ID をテーブルの sp_tournament メタ値に保存することで、特定のトーナメント投稿に関連付けられたリーグテーブル(sp_table 投稿タイプ)です。任意のリーグテーブルをこの方法でトーナメントにリンクできます。

トーナメントページは sp_tournament が現在のトーナメントの ID に設定されたすべてのリーグテーブルを自動的に照会し、「グループ」見出しの下にまとめて表示します。

グループエディターへのアクセス

トーナメントを編集すると、メインコンテンツエリアのブラケットエディターの下(またはダブルエリミネーションブラケットセクションの下)にグループメタボックスが表示されます。このメタボックスはデータベースを照会して、このトーナメントにリンク済みのリーグテーブルを検索し、標準のリーグテーブルエディターを使用してそれぞれをレンダリングします。

グループメタボックスの下部には新規追加ボタンがあります。クリックすると現在のトーナメントの ID が事前入力された状態でリーグテーブルエディターが新しい管理パネルで開き、テーブルを手動でリンクするステップを省略できます。

グループ用リーグテーブルの作成

  1. トーナメント編集画面を開きます。

  2. グループメタボックスまでスクロールします。

  3. 新規追加をクリックして新しいリーグテーブルを開きます。テーブルは現在のトーナメントに事前リンクされます。

  4. 通常のリーグテーブルと同様にリーグテーブルを設定します。チームを割り当て、カラムを設定し、コンペティションとシーズンを追加します。

  5. リーグテーブルを保存します。

  6. トーナメント編集画面に戻ります。新しいテーブルがグループメタボックスに表示されます。

または、リーグテーブルを直接編集することで既存のリーグテーブルをトーナメントにリンクできます。リーグテーブルエディターには、テーブル詳細セクションにトーナメントモジュールによって追加されたトーナメントセレクターが含まれています。そこで 1 つまたは複数のトーナメントを選択して保存します。

テーブルを複数のトーナメントにリンクする

リーグテーブルのトーナメントセレクターは複数の選択をサポートします。複数のトーナメント ID を選択することで、1 つのリーグテーブルが複数のトーナメントのグループセクションに表示できます。

フロントエンドでのグループの表示

トーナメントページがレンダリングされると、tournament-tables.php テンプレートが優勝者パネルとブラケットの後に実行されます。トーナメントにリンクされたすべてのテーブルを照会し、.sp-tournament-tables コンテナ内にレンダリングします。

リンクされたテーブルが 2 つ以上ある場合、並べて表示されます。最初のテーブルが左揃え、2 番目が右揃え、3 番目が再び左揃えというように交互のペアで表示されます。

リンクされたテーブルが 1 つだけの場合は、揃えクラスなしでフル幅で表示されます。

各テーブルは標準の league-table.php テンプレートを使用してレンダリングされます。サイトの他の場所で使用されているのと同じテンプレートです。

「グループ」セクションの見出しは翻訳可能な文字列「グループ」(__( 'Groups', 'sportspress' ))であり、SportsPress > 設定 > テキストでカスタマイズできます。

sportspress_tournament_show_tables オプション

グループの表示は sportspress_tournament_show_tables という名前の WordPress オプションによって制御されます。このオプションが 'no' に設定されている場合、グループセクション全体が非表示になります。デフォルト値は 'yes' です。このオプションは SportsPress の設定 UI には公開されていません。プログラムで設定できます。

update_option( 'sportspress_tournament_show_tables', 'no' );

実装されていない機能

トーナメントモジュールで参照されている sp_group タクソノミー(add_event_taxonomy() 内)はメソッドとして定義されていますが、コンストラクター内の WordPress フックには接続されていません。sp_group タクソノミーはコードベースのどこにも登録されていません。イベントやチームにグループタクソノミーをタグ付けするメカニズムはなく、グループをタクソノミーとして作成・管理する UI もありません。SportsPress Pro のグループはタクソノミーベースのグループ化システムではなく、リンクされたリーグテーブルとしてのみ実装されています。

まとめ

  • グループステージ = トーナメント投稿 ID を指す sp_tournament メタを持つリーグテーブル。

  • テーブルはトーナメント編集画面のグループメタボックスに表示されます。

  • そのメタボックスの新規追加を使用して事前リンクされたテーブルを作成するか、リーグテーブルエディターから既存のテーブルをリンクします。

  • 複数のテーブルはフロントエンドでペアで並べて表示されます。

  • sportspress_tournament_show_tables = 'no' で表示を非表示にできます。

こちらの回答で解決しましたか?