Ghi đè trang Chrome

Tiện ích có thể dùng các trang ghi đè HTML để thay thế một trang mà Google Chrome thường cung cấp. Một tiện ích có thể chứa một giá trị ghi đè cho bất kỳ trang nào sau đây, nhưng mỗi tiện ích chỉ có thể ghi đè một trang:

Trình quản lý dấu trang
Trang xuất hiện khi người dùng chọn mục Trình quản lý dấu trang trong trình đơn Chrome hoặc trên máy Mac, mục Trình quản lý dấu trang trong trình đơn Dấu trang. Bạn cũng có thể truy cập vào trang này bằng cách nhập URL chrome://bookmarks.
Cập nhật trước đây
Trang xuất hiện khi người dùng chọn mục Nhật ký trong trình đơn Chrome hoặc chọn mục Hiện nhật ký đầy đủ trong trình đơn Nhật ký trên máy Mac. Bạn cũng có thể truy cập vào trang này bằng cách nhập URL chrome://history.
Thẻ mới
Trang xuất hiện khi người dùng tạo một thẻ hoặc cửa sổ mới. Bạn cũng có thể truy cập vào trang này bằng cách nhập URL chrome://newtab.

Ảnh chụp màn hình sau đây cho thấy trang Thẻ mới mặc định và trang Thẻ mới tuỳ chỉnh.

Trang thẻ mới mặc định
Trang thẻ mới mặc định.
Trang thẻ mới tuỳ chỉnh
Trang thẻ mới tuỳ chỉnh.

Để dùng thử, hãy xem các mẫu ghi đè của chúng tôi.

Hành vi của cửa sổ ẩn danh

Trong cửa sổ ẩn danh, các tiện ích không thể ghi đè trang Thẻ mới. Các trang khác vẫn hoạt động nếu bạn đặt thuộc tính incognito của tệp kê khai thành "split" (giá trị mặc định). Để biết thông tin chi tiết về cách xử lý các cửa sổ ẩn danh, hãy xem bài viết Lưu dữ liệu và chế độ ẩn danh.

Tệp kê khai

Sử dụng mã sau đây để đăng ký một trang ghi đè trong tệp kê khai tiện ích:

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

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

Đối với PAGE_TO_OVERRIDE, hãy thay thế bằng một trong những nội dung sau:

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

Các phương pháp hay nhất

  • Giúp trang của bạn tải nhanh và có kích thước nhỏ.
    Người dùng mong muốn các trang trình duyệt tích hợp mở ngay lập tức. Tránh làm những việc có thể mất nhiều thời gian. Cụ thể, hãy tránh truy cập vào các tài nguyên cơ sở dữ liệu một cách đồng bộ. Khi đưa ra yêu cầu về mạng, hãy ưu tiên fetch() hơn XMLHttpRequest().

  • Để tránh gây nhầm lẫn cho người dùng, hãy đặt tiêu đề cho trang của bạn.
    Nếu không có tiêu đề, tiêu đề trang sẽ mặc định là URL. Hãy chỉ định tiêu đề bằng thẻ <title> trong tệp HTML của bạn.

  • Hãy nhớ rằng các thẻ mới sẽ ưu tiên thanh địa chỉ khi bạn dùng bàn phím.
    Không dựa vào tiêu điểm bàn phím mặc định cho các phần khác của trang.

  • Tạo trang thẻ mới của riêng bạn.
    Tránh tạo trang thẻ mới có thể khiến người dùng nhầm lẫn với trang thẻ mới mặc định của Chrome.

Ví dụ

Xem các mẫu ghi đè.