Để tạo form liên hệ, form đặt hàng cho web WordPress thì bài viết trước mình đã hướng dẫn bạn sử dụng plugin Contact Form 7 để tạo form. Nhưng với những người làm marketing, làm quảng cáo thì sau khi tạo form xong sẽ cần phải biết cách để tracking nguồn người dùng gửi form để từ đó phân tích được hành vi người dùng tốt hơn để có thể tối ưu được chiến dịch quảng cáo đang chạy.
Bài viết này mình sẽ hướng dẫn cách cài đặt để tracking nguồn người dùng gửi thông tin qua Contact Form 7 để bạn có thể biết được người dùng tới trang web của bạn từ nguồn nào (từ facebook, google hay cốc cốc,…) trang đầu tiên người dùng truy cập trên web bạn là trang nào và người dùng gửi form từ trang nào.
Tham khảo thêm: Hướng dẫn dùng Google Analytics để target đối tượng quảng cáo Facebook
Hướng dẫn cài đặt tracking nguồn người dùng qua Contact Form 7
Các thông tin bạn có thể tracking được bao gồm nguồn giới thiệu, trang web đầu tiên người dùng truy cập, trang web người dùng điền form, địa chỉ IP của người dùng, thông tin trình duyệt. Để tracking nguồn người dùng chúng ta sẽ làm theo 2 bước dưới đây.
Bước 1: Chèn đoạn code dưới đây vào cuối file functions.php
trong theme bạn đang dùng.
Tham khảo thêm: Các bước để chạy quảng cáo Facebook hiệu quả cho người mới bắt đầu
Bước 2: Đăng nhập vào trang quản lý WordPress và mở form cần tracking. Chuyển sang tab Cấu hình Mail và thêm vào mục Nội dung đoạn shortcode [tracking-info]
như sau:
Kết quả khi người dùng gửi thông tin qua form thì bạn sẽ thấy được các thông tin gửi kèm về trong email như này.
Tham khảo thêm: Hướng dẫn cài Customer Chat Facebook (Livechat Facebook) do Facebook phát hành cho WordPress
Đó tất cả chỉ có vậy thôi. Hi vọng bài viết này sẽ giúp ích trong việc tracking nguồn người dùng gửi form qua Contact Form 7 để bạn có thể theo dõi hành vi của khách hàng, từ đó tối ưu được hiệu quả cho chiến dịch quảng cáo của mình.
Tham khảo thêm: Cài đặt theo dõi chuyển đổi khi gửi form thành công bằng Contact Form 7
Nếu thấy bài viết có ích nhớ like và share ủng hộ mình nha. Ngoài ra, nhớ truy cập blog Nguyễn Hùng thường xuyên để theo dõi các bài viết mới. Chúc bạn thành công!
Anh ơi cho em xin lại đoạn code với ạ! Thanks anh!
Em muốn hỏi chút là em dùng Elementor Form Pro thì có cách nào để có tính năng tương tự như trên không ạ
Với Elementor mình nghĩ là được thôi. Nhưng mình chưa thử nên chưa rõ cách làm chi tiết.
Nãy êm vừa thử hỏi chat GPT thì nó thay như này ”
// Add the info to the email
function custom_elementor_form_pro_tracking_info($fields, $redirect_url, $form_id) {
if (!session_id()) {
session_start();
}
$trackingInfo = “\n\n– Tracking Info –\n”;
$trackingInfo .= ‘URL điền form: ‘ . $_SERVER[‘HTTP_REFERER’] . “\n”;
if (isset($_SESSION[‘OriginalRef’])) {
$trackingInfo .= ‘Người dùng đến từ trang: ‘ . $_SESSION[‘OriginalRef’] . “\n”;
}
if (isset($_SESSION[‘LandingPage’])) {
$trackingInfo .= ‘Trang đích trước khi điền form: ‘ . $_SESSION[‘LandingPage’] . “\n”;
}
if (isset($_SERVER[“REMOTE_ADDR”])) {
$trackingInfo .= ‘IP người dùng: ‘ . $_SERVER[“REMOTE_ADDR”] . “\n”;
}
if (isset($_SERVER[“HTTP_X_FORWARDED_FOR”])) {
$trackingInfo .= ‘User\’s Proxy Server IP: ‘ . $_SERVER[“HTTP_X_FORWARDED_FOR”] . “\n\n”;
}
// Add tracking info to the fields array
$fields[‘tracking_info’] = [
‘value’ => $trackingInfo,
‘label’ => ‘Tracking Info’
];
return $fields;
}
add_filter(‘elementor_pro/forms/actions/action’, ‘custom_elementor_form_pro_tracking_info’, 10, 3);
// Original Referrer
function custom_set_session_values() {
if (!session_id()) {
session_start();
}
if (!isset($_SESSION[‘OriginalRef’])) {
$_SESSION[‘OriginalRef’] = $_SERVER[‘HTTP_REFERER’];
}
if (!isset($_SESSION[‘LandingPage’])) {
$_SESSION[‘LandingPage’] = “http://” . $_SERVER[“SERVER_NAME”] . $_SERVER[“REQUEST_URI”];
}
}
add_action(‘init’, ‘custom_set_session_values’);
để mai chạy ads rồi test thử xem sao em nghĩ chắc oke, thanks kiu về chia sẻ của anh
Ok bạn
Đã thử và tracking info thành công với contact form 7. Tuy nhiên, có 1 điều là khi khách hàng điền và click nút gửi đăng ký thì không có thông báo là đã gửi thành công, mà nó rediect luôn về page đó với /#wpcf7-f2708-o1. Vậy có cách nào khắc phục được ko bác?
Bạn thử kiểm tra trên web xem có cài plugin hay code gì để redirect sau khi submit form không. Của mình không gặp lỗi như bạn nói.
Cảm ơn bác! Đoạn mã rất hữu ích, mình đã thử và thành công!
Chào bạn, cho mình hỏi phần link giới thiệu có thể get full link bao gồm utm để tracking không. Cảm ơn bạn
Chào bạn,
Phần link giới thiệu nó sẽ lấy full link bao gồm cả utm và các tham số khác nếu có. Bạn cứ test thử sẽ thấy.
Vậy tốt quá cảm ơn bạn, mà cho mình hỏi có cách lưu thông tin đó vào plugin Contact Form CFDB7 đề phòng trường hợp email gửi k thành công
Mình chưa thử làm như vậy với plugin Contact Form CFDB7 nên cũng không rõ bạn à. Để khi nào rảnh mình ngâm cứu thử xem sao.
Xin chào Nguyễn Hùng!
Tôi có áp dụng code của bạn thì nó có gửi qua email thông tin nguồn người dùng đã nhập form
Nhưng không biết có cách nào sử dụng thông tin nguồn đó gửi qua google sheet ko bạn?
Nếu bạn muốn gửi thông tin về Google Sheet thì bạn có thể tham khảo hướng dẫn này xem có đúng ý bạn không nhé: https://nguyenhung.net/gui-du-lieu-tu-contact-form-7-ve-google-sheets.html
Tôi có xem bài viết đó rồi nhưng đặt [tracking-info] vào phần google sheet thì nó ko hiện đầy đủ thông tin nguồn như bên mail. Với cả bên phần Field List của tab Google sheets trong phần quản trị nó ko hiện thêm trường tracking-info để nhập thêm vào cột của link google sheets để hiện thêm dữ liệu. Không biết phải làm sao
2 bài hướng dẫn là khác nhau nên bạn không thể dùng đoạn shortcode [tracking-info] cho Google Sheet được. Bạn làm theo hướng dẫn riêng ở bài viết mình share link kia nha.
e hỏi chút là e có 1 cái trang kiểu domain/url
e có các cộng tác viên A, B, C
làm sao để người A gửi domain/url cho Kh > kh vào và điền contact form7 > email gửi về e và có thông tin bắt nguồn từ người A ??
để e biết Kh nào của A
Đơn giản nhất là bạn tạo cho các CTV A, B, C mỗi người 1 link khác nhau thì tracking theo cách này sẽ biết đc khách của ai thôi. Ngoài ra, bạn có thể tìm hiểu về UTM để thêm các tham số khác nhau vào cùng 1 link.
Cảm ơn anh Hùng về bài viết rất bổ ích. Hiện các doanh nghiệp và bản thân cty em làm đang bị vướng về phần ghi nhận nguồn tracking từ contact form 7 đổ về google sheet. Rất mong a Hùng hỗ trợ em phần này
Thanks a Hùng
Chào bạn,
Bạn tham khảo thêm hướng dẫn ở bài viết này nữa xem sao nha: https://nguyenhung.net/gui-du-lieu-tu-contact-form-7-ve-google-sheets.html
Hi anh,
Em đã check rất kĩ link anh gửi nhưng ở file google sheet không ghi nhận được link url khách điền form. Anh có thể cắt hình hướng dẫn được không a
Bạn xem cách cài đặt mình hướng dẫn trong bài mình gửi link ở trên nha.
Bạn có thể test cách nó hoạt động thông qua trang demo này cf7demo.gsheetconnector.com và file Google Sheet này: bit.ly/3jXf6X7
Cám ơn bác
đã làm và test thành công
Mình thử trên site bất động sản của mình, chỉ tracking xem đúng link giới thiệu từ zalo qua, còn facebook và google tới điền form nó không nhận diện được bác (chỉ để trùng trang điền form = trang đích giới thiệu tới)
Có thể do cơ chế redirect của các nền tảng đó thay đổi liên tục. Bình thường mình test thì vẫn xem đc nguồn từ Facebook và Google mà.
Mình test trên Theme elementor ko hiện
Nhưng chuyển qua Flatsome thì báo nguồn vô cùng chính xác
Google, zalo, facebook, stwiter rất chính xác
Có thể tuỳ theme nữa. Ăn với flatsome là ngon rồi
Mà cái này tận dụng xem thống kê report hàng ngày khách vào web coi (ko cần để lại form) được ko nhỉ?
Tận dụng loại trừ IP mấy cha click tặc adw
Đoạn code này chỉ tracking cho CF7 thôi. Còn nếu muốn xem report toàn bộ khách vào web thì có thể xem xét sử dụng Histats để lấy IP.
Mình add code vào functions.php mà không được. Form gửi mail về vẫn nguyên đoạn short code [tracking-info]. Mong bạn giúp.
Cho mình hỏi chút mình, cài giống bạn hướng dẫn giờ nó báo thế này là soa nhỉ?
Notice: Undefined index: HTTP_REFERER in /home/…/wp-content/themes/flatsome/functions.php on line 46
Mong hỗ bạn hỗ trợ
Cảm ơn Hùng
Bạn kiểm tra lại dòng số 46 kìa. Với bạn xem đã copy đúng đoạn code vào đúng vị trí chưa nhé.
Có cách nào lấy dữ liệu ngược lại từ google sheet về contact form 7 không a
Dường như đó là cách làm không khả thi với Contact Form 7 cho lắm. Bởi CF7 dùng để tạo form thu dữ liệu từ người dùng chứ ko phải show cho người dùng.
chào bạn, mình đang dùng Contact Form by Supsystic, mình cố sửa code theo dõi tracking người dùng gửi form mà ko được , rất mong được bạn giúp đỡ
Chào bạn,
Hướng dẫn trong bài này và cả các đoạn code là dùng cho Contact Form 7 nên việc bạn dùng Contact Form by Supsystic sẽ không áp dụng đc. Nếu cần bạn có thể chuyển sang dùng plugin Contact Form 7 để có thể thực hiện theo hướng dẫn.
Cảm ơn các bài viết của bác, nó khá bổ ích với em, bác cho em hỏi là em đã dùng plugin cf7-google-sheets-connector để form gửi về google sheet và ok rồi, nhưng bh muốn cả nguồn tracking KH này cũng đc gửi về 1 cột trong sheet đó thay vì phải vào mail đọc từng cái thì làm thế nào?
Nếu muốn hiển thị trong Google Sheet thì chỉ có 1 cách đó là gắn UTM Code cho URL của chiến dịch sau đó chèn thông số url vào trong Google Sheet. Như vậy bạn sẽ thấy được đường link gửi form có kèm mã UTM Code.
cảm ơn bác
Có cách nào để chuyển các thông số đo lường qua google sheet không vậy a
Để gửi dữ liệu từ Contact Form 7 về Google Sheet bạn thử tham khảo bài viết này xem sao nhé. Không biết là có đúng thứ bạn cần ko.
Chuẩn. Cảm ơn đã chia sẻ. Công Đồng cùng phát triển.
Cảm ơn bạn!
Quá bá đạo
Mình làm y như hướng dẫn trên nhưng không có dữ liệu user info.
Ảnh mình chụp lại bạn xem giúp mình nhé:
https://imgur.com/TdkmtXN
https://imgur.com/GX5Tnkg
Cảm ơn bạn!
Bạn kiểm tra lại các bước xem nha. Mình test thử vẫn ok mà
Cam on Hung nhe. Cho phep m copy dan nguon nhe
Ok b