Skip to content

投稿画面の「Feedwright XML プレビュー」サイドバーパネルを削除する #19

@mt8

Description

@mt8

背景

feedwright_feed 投稿タイプは public=true / publicly_queryable=true で登録されており、Gutenberg の編集画面から 通常投稿と同じワークフローでプレビュー・公開ができる:

  • ステータス切替(下書き / 公開予約 / 公開)
  • 「保存して下書き」「プレビュー」「公開」ボタン
  • 「Feed を表示」リンク(PostType::filter_permalink/feedwright/{slug}/ に誘導)

そのため、独自に追加していた 「Feedwright XML プレビュー」サイドバーパネルは二重実装になっており不要。タブごと削除する。

削除対象

Frontend

  • blocks/_shared/XmlPreviewPanel.jsx(PluginSidebar 実装)
  • blocks/element/index.jsimport XmlPreviewPanelregisterPlugin( 'feedwright-xml-preview', ... ) 呼び出し
  • blocks/_shared/editor.css の preview pane 関連スタイル

Backend

  • src/REST/PreviewController.php(REST エンドポイント /wp-json/feedwright/v1/preview/{id}
  • src/Plugin.phpPreviewController 登録行
  • src/Routing/FeedEndpoint.phpserve_preview() / is_preview_request() および ?feedwright_preview=1 の処理(パネルが唯一の発火元なので、削除後は dead code)

Tests

  • tests/Integration/RestControllersTest.php から preview 関連テスト 5 本を削除
  • tests/Integration/FeedEndpointTest.php?feedwright_preview=1 関連があれば併せて削除

Docs

  • docs/requirements.md §10.3「Preview mode」セクション削除
  • §16 REST 章から preview endpoint 記述削除
  • §22 Phase 5 のプレビュー関連 acceptance criteria 削除
  • §10.2 の feedwright_preview クエリ var への参照を整理

i18n

  • POT / PO / MO / JED の再生成(XmlPreviewPanel 由来の文字列が消える)

注意点

  • 通常 WP の preview は ?preview=true&p={id}&preview_nonce={n} 形式。publicly_queryable=true なので core が CPT 用ルートに dispatch する。
  • ただし現状の Routing\FeedEndpoint::maybe_serve_feed()feedwright_feed_slug クエリ var しか見ていないため、core の標準 preview は theme 側の single テンプレートにフォールバックして XML が返らない可能性が高い。
  • 下書き状態でプレビューするユーザ体験を維持するなら、core の preview パスをフックして XML レンダラに dispatch する小さな対応が併せて必要。本 issue のスコープでは、まず削除を行ってから、必要に応じて別 issue で「core preview path への対応」を切る方針とする。
  • 公開済みフィードの「Feed を表示」リンクは PostType::filter_permalink 経由で動くので、削除後も影響なし。

受け入れ基準

  • 編集画面の右サイドバーから「Feedwright XML プレビュー」タブが消えている
  • /wp-json/feedwright/v1/preview/{id} が 404 を返す
  • ?feedwright_preview=1 でアクセスしても 404(または通常の feed 配信に統合)
  • 公開済み投稿の「Feed を表示」リンクは引き続き /feedwright/{slug}/ で feed XML を返す
  • テスト全部グリーン (composer test:unit + wp-env tests)
  • composer phpcs グリーン
  • 翻訳カタログ更新済み(不要 string 削除)
  • docs/requirements.md から削除済みエンドポイントへの参照が無くなっている

影響範囲(おおよそのファイル数)

  • 削除:2 ファイル(XmlPreviewPanel.jsxPreviewController.php
  • 修正:6〜8 ファイル(block index、Plugin、FeedEndpoint、テスト、docs、i18n)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions