Hướng dẫn này sẽ trình bày một plugin WordPress có thể thực hiện các thao tác CRUD (Tạo/Chèn, Đọc/Chọn, Cập nhật, Xóa).
Vì chúng tôi đang tạo một plugin tương tác với cơ sở dữ liệu, bạn có thể muốn đọc các hướng dẫn này (cách kết nối với cơ sở dữ liệu WordPress và cách chèn dữ liệu vào cơ sở dữ liệu WordPress) để hiểu rõ hơn về các hoạt động cơ sở dữ liệu trong WordPress.
Bước 1: Tạo bảng cơ sở dữ liệu.
Chúng tôi đang xử lý các hoạt động cơ sở dữ liệu CRUD để chúng tôi cần có bảng cơ sở dữ liệu để lưu trữ có thể lưu trữ dữ liệu.
Bạn có thể đọc hướng dẫn chi tiết về cách tạo bảng cơ sở dữ liệu khi plugin của bạn được kích hoạt.
Bước 2: Tạo một trang để hiển thị bảng.
Chúng tôi sẽ tạo một bảng HTML đơn giản để hiển thị các bản ghi mà chúng tôi có trong cơ sở dữ liệu.
Bạn có thể tạo bất kỳ trang nào bạn muốn cho dù trang ShortCode, trang quản trị viên hoặc thậm chí là trang Cài đặt nhưng trong hướng dẫn này, chúng tôi sẽ chỉ sử dụng trang quản trị viên.
3. Trong ví dụ này, chúng tôi đã thêm hai dòng mã mà chúng tôi cần tương tác với cơ sở dữ liệu.
Bước 3: Tạo bảng HTML.
CRUD Operations
User ID
Name
Email Address
Actions
Chúng tôi sẽ sử dụng các lớp WordPress CSS mặc định để thiết kế bảng của chúng tôi. Tuy nhiên, nếu bạn muốn thiết kế nó và sử dụng các khung như bootstrap hoặc tạo các lớp học của riêng bạn cũng sẽ ổn.
Trong bảng của chúng tôi sẽ có một ID người dùng, tên, địa chỉ email và cột hành động. Điều này gần giống như bảng mà chúng tôi đã tạo trong cơ sở dữ liệu ngoại trừ việc nó không có cột hành động.User ID, Name, Email Address and Actions column. This is almost
the same as the table that we have created in the database except that it doesn’t have the actions column.
Bước 4: Tạo hàm tạo/chèn.
Trước khi chúng tôi có thể điền vào bảng HTML, chúng tôi cần có dữ liệu trong cơ sở dữ liệu để chúng tôi cần phải tạo hoặc chèn dữ liệu trước.
Dòng mã cuối cùng sẽ chỉ đảm bảo rằng nó tự động tải lại trang để chúng ta có thể thấy bản ghi mới được thêm vào trên bảng của chúng tôi.
Bước 5: Xả bảng HTML.
Bây giờ chúng tôi đã tạo ra một chức năng chèn, bây giờ chúng tôi có thể điền vào cơ sở dữ liệu với các bản ghi. Trước khi bạn tiến hành, hãy chắc chắn rằng bạn có ít nhất một (1) bản ghi để xem kết quả của bước này.
$result = $wpdb->get_results("SELECT * FROM $table_name");foreach ($result as $print) {echo "
$print->user_id
$print->name
$print->email
";}?>
Chúng tôi sẽ tìm nạp các bản ghi từ cơ sở dữ liệu bằng hàm
8 và trả lại một hàng cho bảng của chúng tôi cho mọi dữ liệu được tìm thấy trong cơ sở dữ liệu. Cột hành động cho mỗi bản ghi sẽ được cập nhật và xóa.
Bước này sẽ là chức năng đọc/chọn.
Bước 6: Tạo chức năng cập nhật.
Khi chúng tôi lấy dữ liệu từ cơ sở dữ liệu, chúng tôi đã tạo hai (2) nút trong cột Action. Một trong số đó là nút cập nhật hoạt động như một thẻ neo.
Nút này sẽ thêm ID của bản ghi mà chúng tôi sẽ chỉnh sửa.
if (isset($_GET['upt'])) {$upt_id = $_GET['up'];$result = $wpdb->get_results("SELECT * FROM $table_name WHERE user_id='$upt_id'");foreach($result as $print) {$name = $print->name;$email = $print->email;}echo "
9 được chỉnh sửa thì chúng tôi sẽ hiển thị một bảng chứa bản ghi mà chúng tôi sẽ chỉnh sửa.
Giống như trong hàm chèn, đây sẽ chỉ là một hình thức nhưng sự khác biệt duy nhất là nó đã chứa bản ghi trước đó sẵn sàng để được thay đổi/cập nhật.
Nó sẽ có hai (2) nút, nút đầu tiên sẽ là nút xác nhận sẽ gửi biểu mẫu nếu bạn muốn xác nhận các thay đổi và nút thứ hai là nút Hủy chỉ cần tải lại và xóa
Chúng tôi cũng sẽ đặt hành động biểu mẫu thành trống và phương thức để đăng.
Bây giờ, chúng tôi sẽ thêm một mã khác để xử lý mẫu cập nhật của chúng tôi.
if (isset($_POST['uptsubmit'])) {$id = $_POST['uptid'];$name = $_POST['uptname'];$email = $_POST['uptemail'];$wpdb->query("UPDATE $table_name SET name='$name',email='$email' WHERE user_id='$id'");echo "";}
Mã này sẽ chỉ được thực thi nếu biểu mẫu cập nhật của chúng tôi được gửi.
Chúng tôi cũng sẽ sử dụng hàm
CRUD Operations
User ID
Name
Email Address
Actions
1 để thực thi câu lệnh
CRUD Operations
User ID
Name
Email Address
Actions
2 và dòng mã cuối cùng để tải lại trang để xem kết quả.
Bước 7: Tạo chức năng xóa.
Tương tự với chức năng cập nhật.Nút Xóa cũng sẽ thêm