Appearance
ADM-008 Xツイートまとめ(メイン)管理画面
概要
- X ツイートの検索・取得、要約生成、下書き投稿作成、取得結果の保存・読込・削除などを 複数ステップの UI で行う管理画面。
- WordPress トップレベルメニュー(
add_menu_page)として登録。pageslug はtwitter-summary。操作の多くは admin-ajax 経由。 - Bearer Token / Claude API Key は ADM-009(設定画面)で管理するオプションを参照する。
外部インターフェース
管理画面 URL
| 項目 | 値 |
|---|---|
| URL | /wp-admin/admin.php?page=twitter-summary |
| メニュー名 | Xツイートまとめ |
| 権限 | 画面表示・多くの AJAX: manage_options。下書き投稿作成のみ publish_posts |
admin-ajax(HTTP 契約)
すべて POST /wp-admin/admin-ajax.php。nonce は POST パラメータ nonce を twitter_summary_admin で検証(AdminAjaxNonceTrait)。
action 値 | 説明 | 主な権限 |
|---|---|---|
fetch_tweets | ツイート検索取得。search_type(user|keyword), search_query, max_results | manage_options |
generate_summary | Claude 要約生成。tweets_json(JSON 文字列) | manage_options |
twitter_summary_create_post | 通常投稿の下書き作成。post_title, summary, tweet_ids(JSON 配列) | publish_posts |
twitter_summary_save_tweets | 取得ツイートの名前付き保存(オプションに永続化) | manage_options |
twitter_summary_list_saved_tweets | 保存済み一覧取得 | manage_options |
twitter_summary_load_saved_tweets | 保存済みからツイート本文を復元 | manage_options |
twitter_summary_delete_saved_tweets | 保存済み削除 | manage_options |
POST パラメータの細目は TwitterSummaryAdminPage の各 ajax_* メソッドコメントを正とする。保存件数上限(保存メタデータ)は最大 20 件(超過時は古いものから削除しメッセージに反映)。
設定画面への導線
- Twig に
admin.php?page=twitter-summary-settingsへの URL を渡す(実際の slug は ADM-009 参照)。
エラー
| 条件 | ユーザー向け挙動 | メッセージ / ログ |
|---|---|---|
| nonce 不正 | JSON エラー | 認証失敗 |
| Bearer 未設定 | JSON エラー | TwitterSummaryMessages::TOKEN_MISSING |
| Claude キー未設定(要約時) | JSON エラー | TwitterSummaryMessages::CLAUDE_KEY_MISSING |
| X API 429 等 | JSON エラー | レート制限メッセージまたは例外メッセージ |
外部 API RuntimeException | JSON エラー+ログ | [TwitterSummaryAdminPage][ajax_*] |