ブログに戻る

ワークフロー · 2026年7月15日

URL にローカライズのナビゲーションを保持する

ロケール、検索、フィルター、ページネーションは作業コンテキストです。これらを URL に保持すると、翻訳レビューがより速くなり、状態の復元も可能になります。

URL にローカライズのナビゲーションを保持する

編集者は Contentful のエントリーを 1 つのコンテンツタイプに絞り込み、ソースロケールを選び、キャンペーンを検索して、レビューが必要なページを開きます。

翻訳を確認したあと、戻るをクリックすると、デフォルトのコンテンツ一覧に戻ってしまいます。

データはまだあります。作業コンテキストだけが失われています。

ナビゲーション状態はタスクの一部

ローカライズ画面には、しばしば複数の次元があります。

  • プロジェクト
  • ソースロケールとターゲットロケール
  • コンテンツタイプ
  • 翻訳状態
  • 検索クエリ
  • 並び順
  • ページ

これらの値は、編集者がどの作業をしているかを決定します。これらを一時的なコンポーネント状態として扱うと、ナビゲーション、リフレッシュ、共有リンクをまたいだワークフローは脆弱になります。

復元可能なナビゲーション状態を置く自然な場所は URL です。

戻るは本当に戻るであるべき

編集者は一覧ビューと詳細ビューの間を何度も行き来します。エントリーを確認し、リクエストをレビューし、キューに戻り、次の項目を開きます。

フィルターとページネーションがクエリ文字列にあれば、ブラウザ履歴がその往復を保持します。ユーザーは、詳細ビューのたびに作業範囲を組み立て直すのではなく、同じ作業の切り口に戻れます。

これは単なる利便性ではありません。コンテキストを失ったあとに、レビュー担当者が誤ってロケールやバッチを切り替えてしまう可能性を減らします。

共有可能なビューは連携を改善する

安定したフィルターを持つ URL は、チームメイトと共有できます。

?locale=fr&content_type=landingPage&state=failed

受け取った人は、それを再現するための文章による指示に従う代わりに、同じ運用ビューを開けます。

サポートやデバッグも速くなります。ページ内では技術的な識別子を利用可能なままにしつつ、リンクによって関連する検索条件やステータス状態を保持できます。

機密データを URL に置くべきではありませんが、一般的なコンテンツフィルターはまさにクエリパラメータがうまく扱える種類の状態です。

クエリを正規化する

永続的な URL には規律が必要です。パラメータ順序の違い、空の値、重複したデフォルト値、古いページ番号は、わかりにくい履歴を生む可能性があります。

適切に整理された実装では、次のことを行うべきです。

  1. サーバーでクエリ値を検証する
  2. 可能な限りデフォルト値を省略する
  3. フィルターが変わったらページネーションをリセットする
  4. 無関係ではない有効なフィルターを保持する
  5. 検索の急速な変更には履歴を置き換え、意図的なナビゲーションには履歴を追加する

その結果、URL はビューを表現しつつ、あらゆる UI 操作の追記専用ログにはなりません。

共有されるコントロールを同期させる

ロケールセレクターは、コンテンツ一覧、エントリー詳細、翻訳レビュー、バッチ画面のあちこちに現れます。各コントロールは同じナビゲーションモデルから読み取り、同じモデルに書き込むべきです。

あるセレクターがローカル状態を変更し、別のセレクターがルートを更新する場合、ユーザーには一貫しないラベルが表示され、誤ったロケールでリクエストが作成される可能性があります。

サーバーで検証された URL 状態は、現在の閲覧コンテキストのための明確な単一の情報源を提供します。

要点

フィルターが編集者の目の前の作業を定義しているなら、それは使い捨てのインターフェース設定ではありません。

ロケール、検索、コンテンツタイプ、ステータス、ページネーションを正規化された URL に保持しましょう。戻る操作は信頼できるものになり、ビューは共有可能になり、翻訳作業は一覧と詳細の通常の行き来の中でも失われなくなります。