Biến tùy chỉnh - Theo dõi web (ga.js)

Biến tuỳ chỉnh là thẻ cặp tên-giá trị mà bạn có thể chèn vào mã theo dõi để tinh chỉnh hoạt động theo dõi của Google Analytics. Với biến tuỳ chỉnh, bạn có thể xác định các phân khúc bổ sung để áp dụng cho khách truy cập ngoài những phân khúc do Analytics cung cấp. Tài liệu này mô tả các biến tuỳ chỉnh và cách thiết lập các biến đó.

Tổng quan

Bạn sẽ khai thác tối đa các biến tuỳ chỉnh nếu hiểu mô hình tương tác cơ bản với khách truy cập được dùng trong Google Analytics. Trong mô hình này, khách truy cập tương tác với nội dung của bạn trong một khoảng thời gian và mức độ tương tác với trang web được chia thành hệ phân cấp.

Biểu đồ minh hoạ mô hình này cho một khách truy cập vào trang web của bạn, trong đó mỗi khối đại diện cho số phiên hoạt động của người dùng và số lượt tương tác của người dùng cụ thể đó.

Mỗi cấp độ trong mô hình này được xác định như sau:

  • Khách truy cập—khách hàng truy cập vào trang web, chẳng hạn như trình duyệt hoặc điện thoại di động do người điều hành.
  • Phiên – khoảng thời gian khách truy cập hoạt động trên trang web.
  • Trang – hoạt động thay mặt người dùng gửi yêu cầu ảnh GIF đến máy chủ của Analytics. Đặc điểm này thường là số lượt xem trang, nhưng cũng có thể bao gồm:
    • lượt xem trang
    • sự kiện (ví dụ: nhấp vào nút phim)

Mỗi cấp trong số ba cấp tương tác này xác định một phạm vi tương tác cụ thể của khách truy cập. Sự khác biệt này rất quan trọng đối với biến tuỳ chỉnh vì mỗi biến tuỳ chỉnh đều bị hạn chế ở một phạm vi cụ thể. Ví dụ: bạn có thể muốn biết số phiên mà khách truy cập đã xoá một mặt hàng khỏi giỏ hàng. Đối với trường hợp cụ thể đó, bạn sẽ xác định biến tuỳ chỉnh cho cấp phiên hoạt động để toàn bộ phiên hoạt động của khách truy cập đó được gắn cờ là phiên có các mặt hàng bị xoá khỏi giỏ hàng trực tuyến.

Trở lại đầu trang

Sử dụng biến tùy chỉnh

Vì có thể thiết lập nhiều biến tuỳ chỉnh để theo dõi hoạt động của người dùng trên trang web của mình, nên thường thì bạn sẽ tạo các tiện ích JavaScript của riêng mình để quản lý các biến đó. Tập lệnh của bạn sẽ sử dụng phương thức cơ bản để tạo biến tuỳ chỉnh như sau:

_setCustomVar(index, name, value, opt_scope)

Phương thức này chấp nhận 4 thông số:

  • index—Vị trí cho biến tuỳ chỉnh. Bắt buộc. Đây là một số có giá trị nằm trong khoảng từ 1 đến 5. Bạn chỉ nên đặt một biến tuỳ chỉnh trong một vùng và không nên sử dụng lại cho nhiều vùng khác nhau.
  • name – Tên của biến tuỳ chỉnh. Bắt buộc. Đây là một chuỗi xác định biến tuỳ chỉnh và xuất hiện trong báo cáo Biến tuỳ chỉnh cấp cao nhất của báo cáo Analytics.
  • value – Giá trị của biến tuỳ chỉnh. Bắt buộc. Đây là một chuỗi đi kèm với tên. Bạn có thể ghép nối một số giá trị với một tên biến tuỳ chỉnh. Giá trị xuất hiện trong danh sách bảng của giao diện người dùng cho tên biến đã chọn. Thông thường, bạn sẽ có hai hoặc nhiều giá trị cho một tên cụ thể. Ví dụ: bạn có thể xác định tên biến tuỳ chỉnh gender và cung cấp male cũng như female làm hai giá trị có thể có.
  • opt_scope – Phạm vi của biến tuỳ chỉnh. Không bắt buộc. Như mô tả ở trên, phạm vi này xác định mức độ tương tác của người dùng với trang web của bạn. Đây là một số có các giá trị có thể là 1 (cấp khách truy cập), 2 (cấp phiên) hoặc 3 (cấp trang). Khi không xác định, phạm vi của biến tuỳ chỉnh sẽ được đặt mặc định thành lượt tương tác ở cấp trang.

Đoạn mã sau minh hoạ cách bạn có thể đặt một biến tuỳ chỉnh để theo dõi các lượt truy cập đó khi người dùng đã xoá mặt hàng khỏi giỏ hàng. Ở đây, phương thức _setCustomVar() được gọi ngay trước phương thức _trackEvent() để được phân phối trong yêu cầu GIF mà phương thức _trackEvent() gửi. Công thức này sử dụng tên Items Removed cùng với giá trị Yes để xác định hoạt động đó của người dùng trên trang web. Ngoài ra, bạn cũng nên đặt một biến tuỳ chỉnh mặc định cho Items RemovedNo. Bằng cách này, bạn sẽ có số lượt truy cập không bao gồm lượt xoá mặt hàng khỏi giỏ hàng và số lượt truy cập không bao gồm lượt xoá mặt hàng.

Đoạn mã không đồng bộ (được đề xuất)

 _gaq.push(['_setCustomVar',
      1,                   // This custom var is set to slot #1.  Required parameter.
      'Items Removed',     // The name acts as a kind of category for the user activity.  Required parameter.
      'Yes',               // This value of the custom variable.  Required parameter.
      2                    // Sets the scope to session-level.  Optional parameter.
   ]);
 _gaq.push(['_trackEvent',
      'Shopping', // category of activity
      'Item Removal', // Action
   ]);

Sau khi thiết lập biến tuỳ chỉnh, bạn có thể sử dụng phương thức _deleteCustomVar(index) để xoá biến tuỳ chỉnh.

Trở lại đầu trang

Ví dụ về trường hợp sử dụng

Bạn có thể triển khai biến tuỳ chỉnh theo nhiều cách, tuỳ thuộc vào mô hình trang web và nhu cầu kinh doanh của bạn. Các ví dụ này khám phá nhiều trường hợp sử dụng, trong đó mỗi trường hợp minh hoạ một cấp độ phạm vi khác nhau:

Biến tùy chỉnh cấp trang

Sử dụng biến tuỳ chỉnh cấp trang để xác định tập hợp các hoạt động ở cấp trang của người dùng.

Ví dụ: giả sử bạn quản lý trang web cho một tờ báo trực tuyến, nơi khách truy cập xem nhiều bài viết khác nhau. Mặc dù bạn có thể dễ dàng xác định bài viết cụ thể nào phổ biến nhất, nhưng giờ đây, bạn cũng có thể sử dụng biến tuỳ chỉnh để xác định phần nào của tờ báo phổ biến. Bạn có thể thực hiện việc này bằng cách đặt một biến tuỳ chỉnh ở cấp trang cho mỗi bài viết, tức là phần của bài viết đó được đặt làm biến tuỳ chỉnh. Ví dụ: bạn có thể tạo các mục như Cuộc sống và phong cách, Quan điểmDoanh nghiệp. Bạn có thể đặt một biến tuỳ chỉnh để theo dõi tất cả bài viết của mình theo mục.

Đoạn mã không đồng bộ (được đề xuất)

_gaq.push(['_setCustomVar',
      1,                   // This custom var is set to slot #1.  Required parameter.
      'Section',           // The top-level name for your online content categories.  Required parameter.
      'Life & Style',  // Sets the value of "Section" to "Life & Style" for this particular aricle.  Required parameter.
      3                    // Sets the scope to page-level.  Optional parameter.
   ]);

Hãy tiếp tục với ví dụ này và giả sử bạn không chỉ muốn gắn thẻ phần này cho một bài viết cụ thể mà còn cho phần phụ. Ví dụ: mục Cuộc sống và phong cách cho báo của bạn cũng có thể có một số phần phụ, chẳng hạn như Thực phẩm và đồ uống, Thời trangThể thao. Vì vậy, đối với một bài viết cụ thể, bạn có thể theo dõi cả phần và mục phụ. Bạn có thể đặt một biến tuỳ chỉnh bổ sung để theo dõi tất cả bài viết của mình theo phần phụ.

Đoạn mã không đồng bộ (được đề xuất)

_gaq.push(['_setCustomVar',
          2,                   // This custom var is set to slot #2.  Required parameter.
          'Sub-Section',       // The 2nd-level name for your online content categories.  Required parameter.
          'Fashion',           // Sets the value of "Sub-section" to "Fashion" for this particular article.  Required parameter.
          3                    // Sets the scope to page-level.  Optional parameter.
         ]);

Trong ví dụ này, bạn đặt đồng thời hai biến tuỳ chỉnh cấp trang cho một trang. Đối với một trang bất kỳ, bạn có thể theo dõi tối đa 5 biến tuỳ chỉnh, mỗi biến có một vùng riêng. Điều này có nghĩa là bạn có thể chỉ định thêm 3 biến tuỳ chỉnh trên chính trang này. Đối với tất cả bài viết trên trang web, bạn có thể thiết lập một mảng biến tuỳ chỉnh cấp trang để theo dõi các biến đó theo nhiều phần và phần phụ. Để biết thêm thông tin về cách sử dụng đúng cách biến tuỳ chỉnh cấp trang, hãy xem phần Nguyên tắc sử dụng bên dưới.

Trở lại đầu trang

Biến tùy chỉnh cấp phiên

Sử dụng biến tuỳ chỉnh cấp phiên hoạt động để phân biệt các trải nghiệm của khách truy cập trong các phiên hoạt động.

Ví dụ: nếu trang web của bạn cho phép người dùng đăng nhập, bạn có thể sử dụng biến tuỳ chỉnh trong phạm vi cấp phiên hoạt động để biết trạng thái đăng nhập của người dùng. Bằng cách đó, bạn có thể tạo phân khúc lượt truy cập theo thành viên đã đăng nhập so với khách truy cập ẩn danh.

Đoạn mã không đồng bộ (được đề xuất)

_gaq.push(['_setCustomVar',
      1,             // This custom var is set to slot #1.  Required parameter.
      'User Type',   // The name of the custom variable.  Required parameter.
      'Member',      // Sets the value of "User Type" to "Member" or "Visitor" depending on status.  Required parameter.
       2             // Sets the scope to session-level.  Optional parameter.
   ]);

Giả sử bạn muốn theo dõi cả loại người dùng và liệu có lượt mua hàng trong một phiên nhất định hay không. Nếu giả định rằng mọi trang đều cho phép người dùng đăng nhập, chúng tôi nên đặt trước vị trí số 1 cho biến tuỳ chỉnh Kiểu người dùng và sử dụng một vị trí khác cho lượt mua hàng:

Đoạn mã không đồng bộ (được đề xuất)

_gaq.push(['_setCustomVar',
      2,                   // This custom var is set to slot #2.  Required parameter.
      'Shopping Attempts', // The name of the custom variable.  Required parameter.
      'Yes',               // The value of the custom variable.  Required parameter.
                           //  (you might set this value by default to No)
      2                    // Sets the scope to session-level.  Optional parameter.
   ]);

Trở lại đầu trang

Biến tùy chỉnh cấp khách truy cập

Sử dụng biến tuỳ chỉnh cấp khách truy cập để phân biệt các danh mục khách truy cập trong nhiều phiên hoạt động.

Ví dụ: nếu trang web của bạn cung cấp nội dung trả phí cho người đăng ký trả phí, bạn có thể đặt biến tuỳ chỉnh cấp lượt truy cập để phân tích người dùng nào đang trả phí thành viên, cấp thanh toán nào và người dùng nào đang sử dụng cấp độ dịch vụ miễn phí cho trang web. Bạn có thể đặt biến tuỳ chỉnh này dưới dạng hàm một lần, vì giá trị này sẽ vẫn tồn tại trong suốt vòng đời của cookie khách truy cập.

Đoạn mã không đồng bộ (được đề xuất)

_gaq.push(['_setCustomVar',
      1,                // This custom var is set to slot #1.  Required parameter.
      'Member Type',    // The name of the custom variable.  Required parameter.
      'Premium',        // The value of the custom variable.  Required parameter.
                        //  (possible values might be Free, Bronze, Gold, and Platinum)
      1                 // Sets the scope to visitor-level.  Optional parameter.
 ]); 

Nguyên tắc sử dụng

Phần này mô tả sự khác biệt giữa các loại biến tuỳ chỉnh khác nhau và cách sử dụng đúng cách:

Các loại biến tùy chỉnh

Bảng dưới đây xác định đặc điểm chính của các loại biến khác nhau. Hãy lưu ý rằng có một số hạn chế nhất định khi cùng một vùng được sử dụng bởi nhiều biến.

Tổng độ dài kết hợp của mọi tên và giá trị biến tuỳ chỉnh không được vượt quá 128 ký tự.

Trở lại đầu trang

  Thời lượng Khi chia sẻ vị trí với các biến khác Số điện thoại được phép
Cấp trang

Một lượt xem trang, sự kiện hoặc lệnh gọi giao dịch.

Biến cấp trang cuối cùng được gọi trên một trang là biến được áp dụng cho trang đó.

Đối với bất kỳ tài sản web nào (tập hợp trang), bạn có thể đặt nhiều biến riêng biệt ở cấp trang và sử dụng lại các vùng. Chỉ bị giới hạn bởi số lượng lượt truy cập trong một phiên nhất định.

Đối với một trang bất kỳ, bạn có thể thiết lập tối đa 5 biến tuỳ chỉnh đồng thời.

Cấp phiên

Phiên hiện tại của khách truy cập.

Biến cấp phiên hoạt động gần đây nhất được gọi trong một phiên hoạt động là biến được dùng cho phiên hoạt động đó.
Ví dụ: Nếu login=false cho vị trí số 1 ở đầu phiên và login=true cho vị trí số 1 sau đó, thì phiên đó được đặt thành true cho login.

Vượt quá mọi biến cấp trang đã đặt trước đó được gọi là trong cùng một phiên.
Ví dụ: Nếu vùng số 1 được sử dụng lần đầu cho category=sports sau đó cho login=true cho một phiên, thì category=sports sẽ không được ghi cho phiên đó.

Với bất kỳ tài sản web nào, bạn có thể tạo số lượng biến tuỳ chỉnh riêng biệt ở cấp phiên hoạt động tuỳ theo quy định với giới hạn cặp khoá-giá trị gồm 128 ký tự.

Đối với một phiên hoạt động của người dùng bất kỳ, bạn có thể thiết lập tối đa 5 biến cấp phiên hoạt động.

Cấp khách truy cập

Phiên hiện tại và tất cả các phiên trong tương lai trong vòng đời của cookie khách truy cập.

Giá trị cuối cùng được đặt cho khách truy cập là giá trị áp dụng cho các phiên hiện tại và trong tương lai.

Đối với một tài sản web bất kỳ, bạn có thể tạo tối đa 5 biến riêng biệt ở cấp khách truy cập.

Trở lại đầu trang

Thận trọng khi kết hợp nhiều loại biến

Nhìn chung, bạn không nên kết hợp cùng một vùng biến tuỳ chỉnh với nhiều loại vì điều này có thể dẫn đến các phép tính chỉ số lạ.

Khi sử dụng nhiều biến tùy chỉnh cấp trang, phiên và khách truy cập cho thuộc tính web của mình, bạn cần phải xác định cẩn thận việc sử dụng lại các vị trí. Nếu xảy ra tình huống trên trang web của bạn trong đó một biến tùy chỉnh cấp trang hoặc cấp phiên hoạt động sử dụng cùng một vùng quảng cáo cùng một lúc và một biến cấp trang được đặt, thì chỉ biến cấp đó (hoặc cấp trang) mới được ghi lại.

Các trường hợp sau minh hoạ sự kết hợp giữa các biến cấp trang, phiên và khách truy cập do một người dùng đặt trên cùng một trình duyệt. Trong mỗi ví dụ, vị trí được biểu thị bằng số trong ngoặc đơn và S: cho biết phạm vi của biến.

Trường hợp 1 – Biến cấp phiên cuối cùng được ưu tiên

Ở đây, trang cuối cùng sử dụng lại biến tùy chỉnh cấp phiên trong vùng 1 để biến này được ưu tiên.

Lượt truy cập 1 Trang 1
(1) S:cấp trang
section=opinion
Trang 2
(1) S: cấp phiên
login=true
Trang 3
(1) S: cấp phiên
converted=true

Báo cáo cho số lượt truy cập sẽ là:

  • # lượt truy cập cho phần=ý kiến: 0
  • Số lượt truy cập cho đăng nhập=true: 0
  • # lượt truy cập cho được chuyển đổi=true: 1

Trường hợp 2 - Biến cấp độ khách truy cập ban đầu được ưu tiên

Ở đây, lần đầu tiên biến tùy chỉnh cấp khách truy cập trong lượt truy cập 1 được sử dụng, sau đó là biến tùy chỉnh cấp trang trong lượt truy cập 3. Trong thứ tự này, biến cấp khách truy cập không ghi đè biến cấp trang.

Lượt truy cập 1 Trang 1
(1) S:cấp khách truy cập
gender=male
Lượt truy cập 2 Trang 1
(2) S:cấp phiên
converted=false
Lượt truy cập 3 Trang 1
(1) S:cấp trang
section=opinion

Báo cáo cho số lượt truy cập sẽ là:

  • # lượt truy cập cho giới tính=nam: 2
  • # lượt truy cập cho đã chuyển đổi=false: 1
  • # lượt truy cập cho phần=ý kiến: 1
  • Đừng sử dụng tên khoá trùng lặp trên các vùng.
  • Gọi hàm _setCustomVar() khi có thể đặt hàm này trước lượt xem trang hoặc yêu cầu GIF sự kiện.
    Trong một số trường hợp, bạn có thể không làm được việc này, và bạn sẽ cần đặt một yêu cầu _trackPageview() khác sau khi đặt biến tuỳ chỉnh. Điều này thường chỉ cần thiết trong những trường hợp mà người dùng kích hoạt một var tuỳ chỉnh cấp phiên hoạt động hoặc cấp lượt truy cập, khi mà bạn không thể nhóm phương thức đó với lượt xem trang, sự kiện hoặc lệnh gọi theo dõi thương mại điện tử.
  • Sử dụng ma trận vị trí để theo dõi số lượng lớn biến tuỳ chỉnh.
    Nếu có các yêu cầu theo dõi phức tạp, trong đó bạn có sự kết hợp giữa các biến cấp và cấp phiên có thể xung đột với nhau, bạn nên tạo ma trận vùng để đảm bảo rằng các biến ở cấp phiên hoạt động không vô tình vượt quá các biến ở cấp trang.
  • Cân nhắc sử dụng tính năng Theo dõi sự kiện cho một số ứng dụng nhất định, thay vì sử dụng biến tuỳ chỉnh.
    Ví dụ: giả sử bạn có một cửa hàng nhạc trực tuyến và muốn theo dõi cả phiên đăng nhập, phiên cố gắng mua hàng và phiên phát mẫu nhạc. Bạn nên sử dụng tính năng Theo dõi sự kiện để theo dõi số lần phát nhạc thay vì sử dụng các biến ở cấp phiên hoạt động để đạt được mục tiêu này. Tại đây, bạn có thể sử dụng thông số giá trị thứ 4 của lệnh gọi theo dõi sự kiện để chuyển dữ liệu phiên từ cookie của riêng mình.
  • Đừng sử dụng các biến cấp phiên hoạt động để theo dõi hành vi mà bạn có thể theo dõi bằng các biến cấp trang.
    Ví dụ: giả sử bạn theo dõi trạng thái đăng nhập và trạng thái nỗ lực mua sắm theo phiên, đồng thời trang web của bạn có một trang "Đặc biệt dành cho hội viên" mà bạn cũng muốn theo dõi. Vì biến tùy chỉnh cấp trang sẽ hiển thị số lượt truy cập vào biến cụ thể đó, nên bạn đã có sẵn số lượt truy cập vào trang đó ít nhất một lần.

Trở lại đầu trang