On-Page SEO

Table of Contents (TOC)

Mục lục tự động hoặc thủ công với liên kết nội bộ tới các phần trong bài viết, cải thiện scannability và UX.

4 lượt xem Cập nhật: 26/05/2026

Table of Contents (TOC) là gì?

Table of Contents (TOC), hay danh mục nội dung, là một khối văn bản nằm ở đầu bài viết, liệt kê các phần chính theo thứ tự xuất hiện, kèm liên kết nhảy nhanh tới từng phần đó. TOC có thể được tạo thủ công (viết tay) hoặc tự động (qua JavaScript, plugin hoặc hệ thống CMS như WordPress). Nó không phải tiêu đề phụ — mà là công cụ điều hướng bên trong một trang duy nhất.

TOC thường bắt đầu bằng các thẻ tiêu đề <h2>, <h3>… và dùng id để gắn điểm neo (anchor link), ví dụ: <h3 id="cach-hoat-dong">Cách hoạt động</h3>, sau đó liên kết tới nó bằng <a href="#cach-hoat-dong">Cách hoạt động</a>.

Tại sao quan trọng trong SEO?

TOC không phải yếu tố xếp hạng trực tiếp (ranking factor) theo xác nhận của Google, nhưng lại ảnh hưởng mạnh đến các tín hiệu gián tiếp quyết định thứ hạng:

  • Cải thiện trải nghiệm người dùng (UX): Người đọc dễ quét nội dung, chọn phần cần đọc ngay — giảm tỷ lệ thoát (bounce rate), tăng thời gian ở lại (dwell time).
  • Hỗ trợ khả năng quét (scannability): Trên thiết bị di động, hơn 60% người dùng lướt nhanh trước khi quyết định đọc sâu — TOC giúp họ nắm cấu trúc chỉ trong 3–5 giây.
  • Tăng độ sâu tương tác (engagement depth): Người dùng nhấp vào liên kết trong TOC thường xem nhiều phần hơn — tín hiệu tích cực với thuật toán về mức độ hữu ích của trang.
  • Tối ưu hóa cấu trúc nội dung: Việc xây dựng TOC buộc người viết phải tổ chức nội dung rõ ràng, phân cấp tiêu đề đúng chuẩn HTML — điều kiện tiên quyết để Google hiểu chủ đề và bối cảnh.

Theo nghiên cứu của Backlinko (2023) trên 1 triệu trang top 10 Google, 72% bài viết dài trên 1.500 từ có TOC đều đạt thời gian ở lại trung bình cao hơn 41% so với nhóm không có.

Cách hoạt động

TOC hoạt động dựa trên hai thành phần kỹ thuật cơ bản:

  1. Phát hiện tiêu đề: Hệ thống quét các thẻ <h2>, <h3>, <h4> trong nội dung — thường bỏ qua <h1> vì đây là tiêu đề trang chính.
  2. Tạo liên kết neo: Mỗi tiêu đề được gán một giá trị id duy nhất (tự động hoặc thủ công), rồi đưa vào danh sách dưới dạng thẻ <a href="#id">. Khi người dùng nhấn, trình duyệt cuộn mượt tới phần tương ứng.

Một số công cụ nâng cao còn hỗ trợ: đánh dấu vị trí đang xem (active state), cố định TOC khi cuộn (sticky TOC), hoặc tự cập nhật khi thêm/xóa tiêu đề — nhưng tính năng này phụ thuộc vào cách triển khai.

Hướng dẫn thực hiện

Dưới đây là 3 cách phổ biến để thêm TOC, từ đơn giản đến chuyên sâu:

  1. Tạo thủ công (cho người mới)
    • Viết tiêu đề phụ trong bài (vd: <h2 id="loi-thuong-gap">Lỗi thường gặp</h2>).
    • Ở đầu bài, tạo danh sách với liên kết: <ul><li><a href="#loi-thuong-gap">Lỗi thường gặp</a></li></ul>.
    • Ưu điểm: kiểm soát hoàn toàn, không cần JS. Nhược điểm: phải cập nhật lại khi đổi tiêu đề.
  2. Dùng plugin WordPress (đề xuất cho website Việt)
    • Các plugin phổ biến: Easy Table of Contents, WP Toc, Table of Contents Plus.
    • Cài đặt → kích hoạt → chọn vị trí hiển thị (trên/dưới tiêu đề, cố định) → tùy chỉnh cấp tiêu đề (chỉ lấy h2h3, bỏ h4 nếu không cần).
    • Lưu ý: tránh plugin nặng gây chậm tải — kiểm tra tốc độ sau khi bật.
  3. Tự code nhẹ (cho developer)
    • Dùng JavaScript đơn giản để quét thẻ h2, h3 → sinh id an toàn (chuẩn hóa tiếng Việt: thay dấu, khoảng trắng bằng gạch ngang).
    • Ví dụ: "Cách hoạt động" → "cach-hoat-dong". Không dùng ký tự đặc biệt hoặc Unicode ngoài ASCII.
    • Kèm CSS để làm mượt hiệu ứng cuộn: scroll-behavior: smooth; trong <html> hoặc <body>.

Lỗi thường gặp

Dưới đây là những sai lầm phổ biến khi triển khai TOC — kèm giải pháp khắc phục:

Lỗi Hệ quả Cách sửa
Không chuẩn hóa id cho tiêu đề tiếng Việt Liên kết bị lỗi (404 nội bộ), đặc biệt khi dùng URL có dấu Dùng hàm chuẩn hóa: chuyển chữ hoa → thường, thay dấu thanh bằng gạch ngang, loại bỏ ký tự đặc biệt (đ → d, à → a)
TOC chứa quá nhiều cấp (h2 → h6) Danh mục rối, mất trọng tâm, khó quét Giới hạn chỉ lấy h2h3; bỏ h4 trở xuống trừ khi nội dung rất phức tạp
TOC hiển thị trên mọi trang (kể cả trang chủ, trang danh mục) Ảnh hưởng UX, làm loãng nội dung chính Cấu hình plugin hoặc điều kiện hiển thị: chỉ hiện trên bài viết (single post), độ dài ≥ 1.200 từ

Ví dụ thực tế

Bài viết "Cách tối ưu tốc độ WordPress cho website Việt" trên một trang SEO uy tín có TOC gồm 5 mục:

TOC được cố định bên trái khi cuộn, tự đánh dấu mục đang xem, và chỉ xuất hiện khi bài viết dài hơn 1.500 từ. Kết quả: thời gian trung bình mỗi phiên tăng từ 1 phút 12 giây lên 2 phút 05 giây sau khi triển khai.

Câu hỏi thường gặp

TOC có ảnh hưởng trực tiếp đến thứ hạng Google không?

Không. Google xác nhận TOC không phải yếu tố xếp hạng. Nhưng nó cải thiện các tín hiệu hành vi người dùng — vốn là yếu tố gián tiếp ảnh hưởng đến thứ hạng dài hạn.

Có nên dùng TOC cho bài viết ngắn dưới 800 từ?

Không cần thiết. Bài ngắn thường không có đủ phần con để phân cấp rõ ràng. Dùng TOC lúc này gây dư thừa, làm loãng bố cục và giảm hiệu quả scannability.

TOC có cần tối ưu cho thiết bị di động không?

Có. TOC phải thu gọn (collapse) hoặc ẩn tự động trên màn hình nhỏ hơn 768px — hoặc chuyển sang dạng menu hamburger. Nếu giữ nguyên dạng danh sách dài, sẽ chiếm quá nhiều không gian, gây khó khăn khi chạm (tap target nhỏ).