Xin chào, trong bài viết này tôi sẽ hướng dẫn cho bạn kết nối Contact Form 7 với Google Sheet không cần sử dụng bất cứ plugin nào – sử dụng để lưu form Data.
Tại sao nên lưu dữ liệu CF7 vào Google Sheet?
Contact Form 7 là một trong những plugin biểu mẫu hàng đầu cho WordPress. Tuy nhiên, nó còn thiếu chức năng tích hợp để lưu trữ và chia sẻ các bài nộp biểu mẫu. Bằng cách lưu trữ dữ liệu biểu mẫu vào Google Sheets, bạn có thể:
- Lưu trữ dữ liệu: Việc lưu trữ biểu mẫu trong Google Sheets tạo ra một bản ghi vĩnh viễn có thể tìm kiếm, giúp dễ dàng truy cập và xem lại các mục đã nộp khi cần thiết.
- Chia sẻ dữ liệu Dễ dàng: Bạn có thể chia sẻ Google Sheet với các thành viên trong nhóm để tăng cường sự hợp tác và làm việc hiệu quả hơn.
- Tự động hóa quy trình: Sử dụng Google Sheets để kích hoạt các quy trình khác, chẳng hạn như gửi thông báo hoặc cập nhật cơ sở dữ liệu, từ đó nâng cao hiệu suất làm việc.
Cài đặt Google Apps Script
Mở Google Document ra, chọn Extension, Apps Script.

Xóa tất cả những code có sẵn và copy dòng code này vào!
function doPost(e) {
var sheetName = "Email log";
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(sheetName);
// Tạo bảng nếu không tồn tại
if (!sheet) {
sheet = ss.insertSheet(sheetName);
sheet.appendRow(["email", "date", "time"]);
}
// Phân tích yêu cầu đến
var data = JSON.parse(e.postData.contents);
var emailBody = data.email_body;
var date = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "yyyy-MM-dd");
var time = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "HH:mm:ss");
// Thêm dữ liệu vào bảng
sheet.appendRow([emailBody, date, time]);
return "ok";
}Click vào dòng triển khai – tùy chọn triển khai mới.
Ở dưới dòng chọn loại – chọn ứng dụng web.
Người có quyền truy cập – chỉ mình tôi.

Sau đó các bạn bấm triển khai.
Cuối cùng bạn bấm vào nút ủy quyền truy cập.


Ở bước này bạn nhớ lưu URL lại để điền vào bước 2 (YOUR_APPS_SCRIPT_URL)

Bấm XONG!
Cài đặt lệnh cho CF7 khi gửi form
Bạn hãy chép đoạn code này vào file functions.php
function quicksite_gui_cf7_email_to_api($contact_form) {
/***********************/
$google_apps_script_url = 'YOUR_APPS_SCRIPT_URL';
/***********************/
$submission = WPCF7_Submission::get_instance();
if ($submission) {
$posted_data = $submission->get_posted_data();
$clean_body = implode("\n", $posted_data);
$data = array('email_body' => $clean_body);
$response = wp_remote_post($google_apps_script_url, array(
'method' => 'POST',
'body' => wp_json_encode($data),
'headers' => array(
'Content-Type' => 'application/json',
),
));
if (is_wp_error($response)) {
error_log('CF7 Email API Error: ' . $response->get_error_message());
}
}
}
add_action('wpcf7_before_send_mail', 'quicksite_send_cf7_email_to_api');Thay YOUR_APPS_SCRIPT_URL bằng link bạn làm ở bước 1.
Như vậy là xong! Chúc bạn thành công!
Lời khuyên
Phương pháp này đòi hỏi người dùng mang tính kỹ thuật (lập trình viên) và không phù hợp với những người như chủ doanh nghiệp – điều hành kinh doanh. Thay vào đó, tôi khuyên bạn nên sử dụng Fluent Forms Pro








