Skip to content

SC-016 期間機種別差枚ランキングショートコード

概要

  • 指定期間・ホールの 機種別差枚ランキング(合計 / 平均タブ切替)と 折れ線グラフ(累計 / 単日切替、チェックボックスで系列 ON/OFF)を出力する。
  • PUB-005 では 専用ページテンプレート を正とし、固定ページ本文にショートコードを置く必要はない。タグ [period_kishu_samai_ranking] は埋め込み・後方互換用(広告なし・結果エリア一体型)。
  • 期間・ホール・台数条件は ページ上フォーム で変更する。初回 HTML はフォーム + プレースホルダ。データ本体は API-001-15 で取得する。
  • 日別記事(PUB-003 機種別ランキング / SC-009 kishudata)からクエリ付きリンクで遷移し、記事日の ホール・任意 kishu を初期状態に反映する。

ワイヤーフレーム

PUB-005 のワイヤーフレーム と同一: <PeriodKishuSamaiRankingWireframeReactHost />

外部インターフェース

ショートコードタグ

  • タグ名: [period_kishu_samai_ranking]
  • 入力例(最小): [period_kishu_samai_ranking]
  • 入力例(初期値指定): [period_kishu_samai_ranking default_hall="アイランド秋葉原" chart_top_n="5"]

属性一覧

属性役割必須
default_hallフォーム初期ホール(HallEnum 対応)。URL hall がある場合は URL 優先任意
default_period_startフォーム初期開始日(YYYY-MM-DD / YYYY/MM/DD / YYYYMMDD)任意
default_period_endフォーム初期終了日(同上)任意
chart_top_nグラフチェックボックスの初期 ON 件数(既定 5、上限 10)任意
ranking_limit後方互換用(非推奨。クライアント側で初期 10 行 +「さらに読み込む」+10 行)任意

必須属性なし(フォーム駆動のため)。

URL クエリ(ディープリンク)

クエリ役割
hallフォーム初期ホール
target_dayリンク元記事日 → 属する暦月を期間に展開
period_start明示開始日(target_day より target_day 優先)
period_end明示終了日
kishuハイライト機種(表強調 + グラフチェック ON)

後方互換: 旧 day パラメータは読み取りのみサポート。新規リンクは target_day を使用する。

出力

ブロック内容
フォーム期間・ホール・台数・不等号入力 + 表示ボタン + 注記
タブ合計差枚 / 平均差枚
機種別ランキング + グラフ列チェックボックス
グラフChart.js 折れ線(累計 / 単日切替、チェック ON 機種のみ描画)

アセット

  • SC-016 専用 webpack エントリ(Chart.js を daily-article-public バンドルと分離)
  • CSS: BEM + ranking-common.css 再利用

エラー

条件ユーザー向け挙動メッセージ / ログ
期間未入力・不正形式B-5 エラー表示ValidationException(SC-010 同等)
period_start > period_end同上ValidationException
期間が 366 日超同上ValidationException
hall 未選択または不正同上ValidationException(HallEnum 照合失敗)
台数のみ指定・不等号未指定同上ValidationException
unit_count が負数または非整数同上ValidationException
API エラーB-5 エラー表示REST エラーメッセージ
0 件B-5 空状態メッセージデータなし文言

今後の更新で崩してはいけないところ(互換性契約)

公開契約(Breaking change 扱い)

  • ショートコード名 period_kishu_samai_ranking を変更しない
  • 属性名 default_hall / default_period_start / default_period_end / chart_top_n / ranking_limit を変更しない
  • URL クエリ名 hall / target_day / period_start / period_end / kishu を変更しない(日別記事リンクとの契約)。旧 day は読み取り互換として残す

関連設計書

種別参照
公開画面PUB-005
DTOIF-002
RESTAPI-001-15