Chrome ページをオーバーライドする

拡張機能では HTML オーバーライド ページを使用して、Google Chrome で通常提供されるページを置き換えることができます。拡張機能では、以下のどのページもオーバーライドを設定できますが、各拡張機能でオーバーライドできるのは 1 ページのみです。

ブックマーク マネージャー
ユーザーがブックマーク マネージャーのメニュー項目を選択したときに表示されるページ Chrome メニュー、または Mac の場合は [ブックマーク マネージャ] メニューの [ブックマーク マネージャ] をクリックします。また、 このページにアクセスするには、URL「chrome://bookmarks」を入力します。
履歴
ユーザーが Chrome で [履歴] メニュー項目を選択したときに表示されるページ Mac の場合は [履歴] メニューの [全履歴を表示] を選択します。このページには 「chrome://history」という URL を入力します。
新しいタブ
ユーザーが新しいタブやウィンドウを作成するときに表示されるページ。また、 「chrome://newtab」と入力します。

次のスクリーンショットは、デフォルトの新しいタブページとカスタムの新しいタブページです。

<ph type="x-smartling-placeholder">
</ph> デフォルトの新しいタブページ
デフォルトの新しいタブページ
で確認できます。 <ph type="x-smartling-placeholder">
</ph> カスタムの新しいタブページ
カスタムの新しいタブページ

これを試すには、オーバーライドのサンプルをご覧ください。

シークレット ウィンドウの動作

シークレット ウィンドウでは、拡張機能で新しいタブページをオーバーライドすることはできません。シークレット マニフェスト プロパティが次のように設定されている場合、他のページは引き続き機能します。 「spanning」に設定(デフォルト値)。シークレット ウィンドウの処理方法について詳しくは、データの保存とシークレット モードをご覧ください。

マニフェスト

拡張機能のマニフェストでオーバーライド ページを登録するには、次のコードを使用します。

{
  "manifest_version": 3,
  "name": "My extension",
  ...

  "chrome_url_overrides" : {
    "PAGE_TO_OVERRIDE": "myPage.html"
  },
  ...
}

PAGE_TO_OVERRIDE は、次のいずれかに置き換えます。

  • "bookmarks"
  • "history"
  • "newtab"

ベスト プラクティス

  • ページを小さくして短くする。
    ユーザーは、組み込みのブラウザページが瞬時に開くことを期待しています。時間がかかる操作を避ける あります。特に、データベース リソースに同期的にアクセスすることは避けてください。ネットワーク リクエストを行う場合は、XMLHttpRequest() よりも fetch() を優先します。

  • ユーザーの混乱を避けるため、ページにタイトルを付けてください。
    タイトルを指定しない場合、ページタイトルはデフォルトで URL に設定されます。HTML ファイルで <title> タグを使用してタイトルを指定します。

  • 新しいタブでは、最初にキーボードのフォーカスがアドレスバーに表示されます。
    キーボード フォーカスをデフォルトでページの他の部分に任せないでください。

  • 新しいタブページをカスタマイズする。
    Chrome のデフォルトの新しいタブページとユーザーが混同する可能性がある、新しいタブページを作成しないでください。

オーバーライドのサンプルをご覧ください。