Trong WordPress, bạn thường tương tác với cơ sở dữ liệu bằng cách sử dụng wpdb( Thêm , Sửa , Xóa, Lấy và Cập nhật . Dưới đây là các ví dụ về truy vấn SQL được gói gọn trong wpdb các phương thức của WordPress, cùng với mã demo cho từng thao tác.
1. Thêm dữ liệu (INSERT)
Hoạt động này sẽ chèn một bản ghi mới vào cơ sở dữ liệu WordPress.
Ví dụ: Chèn một bản ghi loại bài đăng tùy chỉnh mới vào wp_postsbảng.
2. Chỉnh sửa dữ liệu (SELECT + UPDATE)
Để chỉnh sửa dữ liệu, trước tiên bạn phải lấy dữ liệu, sau đó cập nhật dữ liệu bằng các giá trị mới.
Ví dụ: Cập nhật tiêu đề bài đăng theo ID.
3. Xóa dữ liệu (DELETE)
Bạn có thể xóa một bản ghi khỏi cơ sở dữ liệu bằng cách chỉ định các điều kiện để khớp với bản ghi đó.
Ví dụ: Xóa bài đăng theo ID.
4. Chọn dữ liệu (SELECT)
Bạn có thể cần phải chọn và lấy dữ liệu từ cơ sở dữ liệu.
Ví dụ: Truy xuất thông tin chi tiết bài đăng theo ID bài đăng.
5.Lấy danh sách dữ liệu
Để lấy danh sách các hàng (nhiều bản ghi) từ cơ sở dữ liệu trong WordPress, bạn có thể sử dụng $wpdb->get_results()phương thức này. Phương thức này trả về một mảng các đối tượng hoặc mảng, tùy thuộc vào cấu trúc truy vấn. Dưới đây là ví dụ về cách lấy nhiều hàng từ cơ sở dữ liệu WordPress và xử lý chúng.
Ví dụ: Lấy danh sách bài đăng
Lấy tất cả các bài viết từ wp_postsbảng
Ví dụ: Sử dụng $wpdb->get_results()với Prepared Query
Để bảo mật và ngăn chặn tấn công SQL injection, bạn nên sử dụng $wpdb->prepare()khi làm việc với dữ liệu động.
Lấy tất cả các bài đăng có loại bài đăng cụ thể (ví dụ: page)
Giải thích về Bộ luật:
- $wpdb->get_results(): Hàm này được sử dụng để lấy danh sách các hàng (nhiều bản ghi) từ cơ sở dữ liệu. Nó trả về một mảng các đối tượng, trong đó mỗi đối tượng tương ứng với một hàng từ tập kết quả.
- $wpdb->prepare():Hàm này chuẩn bị truy vấn, đảm bảo mọi dữ liệu đầu vào của người dùng đều được khử trùng và ngăn chặn tấn công SQL.
- Lặp qua các kết quả : Sau khi lấy kết quả, bạn lặp qua mảng và truy cập các thuộc tính của từng hàng (cột) như $post->ID, $post->post_title, và $post->post_content.
Ví dụ: Lấy danh sách dữ liệu tùy chỉnh (từ bảng tùy chỉnh)
Nếu bạn có dữ liệu tùy chỉnh được lưu trữ trong một bảng tùy chỉnh (ví dụ: a wp_custom_table), bạn có thể sử dụng phương pháp tương tự để truy xuất các hàng từ bảng đó.
Giải thích chức năng:
- $wpdb->insert(): Được sử dụng để thêm dữ liệu mới vào cơ sở dữ liệu. Nó tự động xử lý INSERTtruy vấn SQL cần thiết.
- $wpdb->update(): Được sử dụng để cập nhật các bản ghi hiện có trong cơ sở dữ liệu. Nó lấy tên bảng, một mảng các giá trị mới và một điều kiện để xác định những hàng nào cần cập nhật.
- $wpdb->delete(): Được sử dụng để xóa bản ghi. Nó lấy tên bảng và một điều kiện để xác định những hàng nào cần xóa.
- $wpdb->get_row(): Truy xuất một hàng duy nhất từ cơ sở dữ liệu (hữu ích cho các truy vấn SELECT).
- $wpdb->get_results(): Hàm này được sử dụng để lấy danh sách các hàng (nhiều bản ghi) từ cơ sở dữ liệu. Nó trả về một mảng các đối tượng, trong đó mỗi đối tượng tương ứng với một hàng từ tập kết quả.
- $wpdb->prepare(): Chuẩn bị truy vấn SQL một cách an toàn bằng cách khử trùng dữ liệu và ngăn chặn tấn công SQL.
Ghi chú:
- Bảo mật : Luôn sử dụng $wpdb->prepare()khi đưa biến vào truy vấn SQL để ngăn chặn tấn công SQL.
- Tiền tố wpdb : $wpdb->prefixđảm bảo rằng bạn đang sử dụng đúng tiền tố bảng, thường là như vậy wp_trừ khi bị thay đổi trong quá trình cài đặt.
- Theo mặc định, $wpdb->get_results()trả về một mảng các đối tượng. Bạn có thể chỉ định các định dạng khác (ví dụ: một mảng các mảng liên kết) bằng cách truyền đối số thứ hai cho hàm. Ví dụ, $results = $wpdb->get_results($query, ARRAY_A);
Chạy truy vấn SQL trực tiếp:
Nếu bạn cần chạy truy vấn tùy chỉnh, bạn cũng có thể sử dụng $wpdb->query()để thực thi các lệnh SQL thô.
Ví dụ: Chạy truy vấn SQL tùy chỉnh.
Bằng cách làm theo các ví dụ này, bạn có thể thực hiện các thao tác thêm, chỉnh sửa, xóa và cập nhật trong cơ sở dữ liệu WordPress bằng cách sử dụng wpdb.
Những câu hỏi thường gặp
Nếu bạn chưa tải file thông qua link rút gọn bao giờ, thì bạn có thể xem hướng dẫn để tải về.
Có nhé. Bạn vui lòng điền vào form yêu cầu khóa học này hoặc inbox quản trị viên để được update nhé!
Nếu bạn gặp vấn đề về liên kết ví dụ như tệp không tồn tại, không thể truy cập,...vui lòng báo cáo với quản trị viên.
Vui lòng xem hướng dẫn nếu bạn chưa biết cách xem video tại pdusoft.
FaceBook Comments
Google Comments
Không có nhận xét nào. Bạn hãy là người đầu tiên!