CF7 to Google Sheet được áp dụng khá nhiều cho các website WordPress. Việc sử dụng Google Spreadsheet đã phổ biến trong mọi ngành nghề hiện nay. Các website sử dụng WordPress cũng thường xuyên sử dụng Contact Form 7 (CF7) để thu thập dữ liệu và thông tin người dùng, nhằm lưu trữ và phục vụ cho các mục đích khác nhau, nhiều website đã áp dụng tính năng lưu giữ liệu đó vào Google Sheet với nhiều cách khác nhau như sử dụng plugin CF7 Google Sheet Connector. Nhưng gần đây có nhiều hiện tượng kết nối không thành công hoặc không ổn định, hoặc phải mua bản pro…Trong bài viết này, tôi sẽ hướng dẫn các bạn cách tự làm chức năng kết nối Contact Form 7 (CF7) to Google Sheet hoàn toàn miễn phí và cực kỳ ổn định. Kết nối chính chủ trực tiếp từ Google Sheet API, không phụ thuộc vào plugin bên thứ 3 nào hết.
Một số thủ thuật khác với Contact Form 7
- Thêm Tỉnh/Thành – Quận/Huyện – Phường/Xã vào trong Contact Form 7
- Anti “spam” Contact Form 7 đơn giản, hiệu quả, dễ sử dụng
Bài viết khác
Hướng dẫn
Bài viết khá mang nặng tính kỹ thuật nhưng được hướng dẫn rất chi tiết, đảm bảo kết nối chính chủ ổn định. Những người không có kiến thức về lập trình cũng có thể áp dụng được.
Bước 01: Tạo Project Google Cloud API
Truy cập vào https://console.cloud.google.com và chọn vào Select a project, sau đó bấm New Project để tạo dự án mới cho việc kết nối CF7 với Google Sheet.
Đặt Project Name tùy ý theo mong muốn, sau đó bấm CREATE.
Tại ô tìm kiếm trong Project, nhập từ khóa Google Sheet API và chọn kết quả đầu tiên
Bấm chọn ENABLE để kích hoạt
Bước 02: Tạo khóa bảo mật Google Sheets API
Sau khi kích hoạt ở bước trên xong, sẽ chuyển sang màn hình tổng quan của Google Sheets API. Tại đây bấm chọn Credentials ở menu bên trái, bấm chọn +CREATE CREDENTIALS và chọn Service Account
Đặt tên Service account name tùy ý rồi bấm chọn DONE
Màn hình sẽ chuyển lại về trang Credentials và bấm chọn vào Email vừa tạo ở phần Service Accounts phía dưới
Bấm chọn vào tab KEYS, chọn ADD KEY và Create new key
Tạo key bằng file JSON và bấm CREATE, sau đó tải file JSON về máy.
Bước 03: Cài đặt code vào website kết nối CF7 to Google Sheet
Phần này dành cho những ai muốn tìm hiểu sâu về từng bước khởi tạo. Hoặc có thể bỏ qua phần này và download file .zip chứa folder code đã cấu hình sẵn phía bên dưới.
- Tạo folder riêng chứa chức năng này và đặt tên tùy ý (ví dụ cf7-to-sheet)
- Truy cập vào Composer và download file
composer.phar
để phục vụ việc tải thư viện của PHP. - Download và cài đặt Git-scm.
- Mở Git Bash và chạy lệnh
php composer.phar require google/apiclient
để tải thư viện về. - Copy file Key Json đã download ở trên vào folder code này
- Mở file
functions.php
và thêm dòng coderequire_once 'cf7-to-sheet/index.php';
Tạo file index.php
và setup code như sau:
<?php require_once 'vendor/autoload.php'; add_action('wpcf7_before_send_mail', function($contact_form, $abort, $submission){ $fullname = $submission->get_posted_data('fullname'); $phone = $submission->get_posted_data('phone'); $email = $submission->get_posted_data('email'); $website = $submission->get_posted_data('website'); $message = $submission->get_posted_data('message'); $client = new \Google_Client(); $client->setApplicationName('CF7 Google Sheets'); $client->setScopes([\Google_Service_Sheets::SPREADSHEETS]); $client->setAccessType('offline'); $client->setAuthConfig(get_stylesheet_directory().'/cf7-to-sheet/cf7-key.json'); // Trỏ tới file key json đã download ở trên $service = new \Google_Service_Sheets($client); $spreadsheetId = '1ZTEwlBRw1hjk42GgsNWnyre8wkJ-wlW2gYpM'; // ID file Sheet $range = "Sheet1"; // Tên tab Sheet con bên trong file (nên viết liền không dấu) $values = [ [ $fullname ?? null, $phone ?? null, $email ?? null, $website ?? null, $message ?? null ] ]; $body = new \Google\Service\Sheets\ValueRange(array( 'values' => $values ) ); $params = [ 'valueInputOption' => 'RAW' ]; $result = $service->spreadsheets_values->append($spreadsheetId, $range, $body, $params); }, 10, 3); ?>
Bước 04: Thêm tài khoản email vào Sheet
Tại màn hình này, copy Email: cf7tosheet@cf7-connect-sheet.iam.gserviceaccount.com ở mục Service Accounts và thêm vào trong quyền chia sẻ ở Sheet
Bài viết có video hướng dẫn chi tiết, các bạn nên mở xem để hiểu hơn về cách cài đặt
Bài viết khác
Cái này còn dùng được k anh nhỉ, sao em chạy không được á
của bạn bị lỗi gì mà ko chạy được