CHƯƠNG TRÌNH GIẢM 50% GIÁ TẤT CẢ CÁC GÓI HOSTING WORDPRESS => Link giảm 50%
Bài viết có Video hướng dẫn tạo API Key để test, Có file tải về dùng thử ngay bên trong bài viết.
Kết nối API là một kỹ năng cực kỳ quan trọng đối với các lập trình viên WordPress hiện đại. Dù bạn là người mới học code, việc hiểu và biết cách gọi API sẽ giúp bạn xây dựng các chức năng mạnh mẽ như lấy dữ liệu từ bên thứ ba (thời tiết, sản phẩm, bài viết…) hoặc giao tiếp với các hệ thống khác.
🌱 Nếu thấy bài viết hữu ích, bạn có thể ủng hộ tác giả bằng cách nhấn vào quảng cáo bên dưới — như một donate miễn phí. Bạn không mất gì nhưng chúng tôi sẽ có thêm chi phí để duy trì và vận hành website. Cảm ơn bạn! 🙏
Nếu bạn là sinh viên chuẩn bị thực tập hoặc mới đi làm lập trình web, đặc biệt là với WordPress, thì việc nắm vững cách gọi API là một kỹ năng cực kỳ quan trọng. Đây là kỹ năng nền tảng giúp bạn:
- Kết nối WordPress với các dịch vụ bên ngoài như OpenAI, Google Sheet, OpenWeatherMap…
- Lấy dữ liệu thời gian thực để hiển thị trên website
- Tạo các tính năng linh hoạt hơn cho khách hàng
Trước khi bắt đầu, bạn cần trang bị những kiến thức sau:
| Chủ đề | Mức độ hiểu biết cần thiết | Gợi ý học |
|---|---|---|
| HTML cơ bản | Biết cách tạo thẻ <div>, <p>, hiển thị dữ liệu ra trình duyệt | W3Schools, MDN |
| PHP cơ bản | Hiểu biến ($var), hàm (function), mảng (array), vòng lặp, điều kiện | freeCodeCamp, PHP.net |
| Cách tạo file trong theme WordPress | Biết thêm code vào file functions.php, hoặc tạo file plugin .php | YouTube: “Cấu trúc theme wordpress” |
| Khái niệm API & JSON | Biết API là gì, JSON là gì, và cách gọi – đọc dữ liệu | Xem sơ lược REST API + dùng Postman |
| Kỹ thuật debug trong WordPress | Biết dùng print_r(), var_dump(), bật WP_DEBUG | Hữu ích khi xử lý lỗi kết nối |
| Shortcode trong WordPress | Biết cách tạo shortcode để hiển thị dữ liệu trong bài viết hoặc trang | WordPress Dev Handbook |
| (Nếu có thời gian) – Cách tạo plugin mini | Giúp tái sử dụng code API nhiều nơi, dễ chia sẻ và đóng gói |
Bạn không cần phải quá giỏi, chỉ cần:
- Hiểu các khái niệm cơ bản trên
- Biết cách thêm code đúng chỗ, không phá vỡ web
- Có tinh thần thử sai và kiên nhẫn debug
Sau khi đã nắm các kiến thức trên, bạn hoàn toàn có thể làm được các phần hướng dẫn bên dưới từ A đến Z.
Trong bài viết này, bạn sẽ học cách kết nối API trong WordPress một cách dễ hiểu, có ví dụ thực tế, từng bước rõ ràng.
1. API là gì? Vì sao bạn nên học kết nối API?
API (Application Programming Interface) là cách các phần mềm “giao tiếp” với nhau. Với WordPress, học API giúp bạn:
- Lấy dữ liệu từ bên ngoài (tin tức, sản phẩm, thời tiết…)
- Tự động gửi dữ liệu từ website đến hệ thống khác
- Giao tiếp với các nền tảng như chatbot, thanh toán, Google Sheet, v.v.
👉 Đây là kỹ năng quan trọng nhất khi bạn bắt đầu viết plugin, làm theme nâng cao.
Giải thích qui trình Request API trong WordPress
2. Các phương pháp gọi API trong WordPress
2.1. Dùng wp_remote_get() hoặc wp_remote_post()
Đây là cách WordPress chính thức khuyến nghị, vì bảo mật và tương thích tốt.
$response = wp_remote_get('https://api.example.com/data');
if (!is_wp_error($response)) {
$body = wp_remote_retrieve_body($response);
$data = json_decode($body, true);
}
2.2. Các thư viện bên ngoài (ít dùng với WordPress)
Bạn có thể dùng CURL, Guzzle… nhưng chỉ khi thực sự cần, vì WordPress đã hỗ trợ rất tốt từ bên trong.

3. Cách gọi API bằng wp_remote_get() – Ví dụ cơ bản
Bước 1: Lấy API key từ nhà cung cấp
Ví dụ với OpenWeatherMap, bạn đăng ký để nhận key miễn phí.

Video hướng dẫn cách lấy API Key để test
Bước 2: Gọi API trong WordPress
$api_key = ‘YOUR_API_KEY’; thay key vừa tạo bên trang openweathermap
function get_weather_data() {
$api_key = 'YOUR_API_KEY';
$city = 'Ho Chi Minh';
$url = "https://api.openweathermap.org/data/2.5/weather?q={$city}&appid={$api_key}&units=metric";
$response = wp_remote_get($url);
if (is_wp_error($response)) return 'Lỗi kết nối API.';
$body = wp_remote_retrieve_body($response);
$data = json_decode($body, true);
return "Nhiệt độ ở {$city} là " . $data['main']['temp'] . "°C";
}
Bước 3: Hiển thị trên website
echo get_weather_data();
4. Những lỗi thường gặp khi kết nối API và cách khắc phục
| Lỗi gặp phải | Cách xử lý |
|---|---|
| wp_remote_get() trả về lỗi | Kiểm tra URL, kết nối mạng, SSL hoặc hạn chế server |
| Không có dữ liệu hoặc null | In print_r($response) để debug JSON trả về |
| API giới hạn số lượt gọi | Dùng transient để cache dữ liệu |
$data = get_transient('weather_cache');
if ($data === false) {
$data = get_weather_data(); // gọi API
set_transient('weather_cache', $data, 30 * MINUTE_IN_SECONDS);
}
5. Tự xây shortcode hoặc plugin để hiển thị dữ liệu API
Tạo shortcode đơn giản:
function show_weather_shortcode() {
return get_weather_data();
}
add_shortcode('wpshare247_show_weather', 'show_weather_shortcode');
→ Trong bài viết, bạn dùng: [wpshare247_show_weather]
Tạo plugin mini (tuỳ chọn)
Bạn có thể đưa toàn bộ đoạn code trên vào file PHP như sau:
Trước tiên hãy tạo 1 file wpshare247_weather_vn.php dùng phần mềm Sublime Text hoặc bất cứ trình soạn thảo code nào bạn biết.
<?php
/*
Plugin Name: Thời tiết Việt Nam
Plugin URI: https://wpshare247.com/connect-api-wordpress-cho-nguoi-moi
Description: Plugin hiển thị nhiệt độ hiện tại từ OpenWeatherMap dành cho các tỉnh thành Việt Nam.
Version: 1.0
Author: WPSHARE247
Author URI: https://wpshare247.com
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: thoi-tiet-viet-nam
Domain Path: /languages
*/
function get_weather_data() {
$api_key = 'YOUR_API_KEY'; // Thay bằng API KEY của bạn
$city = 'Ho Chi Minh';
$url = "https://api.openweathermap.org/data/2.5/weather?q={$city}&appid={$api_key}&units=metric";
if($api_key=='YOUR_API_KEY') return 'Bạn chưa có key.....';
$response = wp_remote_get($url);
if (is_wp_error($response)) return 'Lỗi kết nối API.';
$body = wp_remote_retrieve_body($response);
$data = json_decode($body, true);
return "Nhiệt độ ở {$city} là " . $data['main']['temp'] . "°C";
}
// [wpshare247_show_weather] nhúng shortcode này vào bất kì chỗ nào trong bài viết
function wpshare247_show_weather_shortcode() {
return get_weather_data();
}
add_shortcode('wpshare247_show_weather', 'wpshare247_show_weather_shortcode');
→ Nén file lại thành .zip → Tải lên WordPress như một plugin thật.
Hoặc bạn có thể tải plugin tại đây

6. Cách gọi API bằng code PHP CURL
Nếu bạn đang thiết kế web bằng PHP thuần (không sử dụng WordPress), bạn có thể sử dụng thư viện cURL để gọi API một cách linh hoạt. Đây là một phương pháp phổ biến để lấy dữ liệu từ các dịch vụ bên ngoài, chẳng hạn như API thời tiết, API tin tức, hoặc các hệ thống RESTful khác. Dưới đây là ví dụ cách gọi API thời tiết từ OpenWeatherMap bằng cURL:
function get_weather_data() {
$api_key = 'YOUR_API_KEY';
$city = 'Ho Chi Minh';
$url = "https://api.openweathermap.org/data/2.5/weather?q={$city}&appid={$api_key}&units=metric";
// Khởi tạo cURL
$ch = curl_init();
// Thiết lập các tùy chọn cho cURL
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Trả kết quả về biến, không in ra
// Thực thi request và lấy kết quả
$response = curl_exec($ch);
// Kiểm tra lỗi
if (curl_errno($ch)) {
$error_msg = curl_error($ch);
curl_close($ch);
return 'Lỗi cURL: ' . $error_msg;
}
// Đóng cURL
curl_close($ch);
// Giải mã JSON
$data = json_decode($response, true);
// Kiểm tra dữ liệu
if (isset($data['main']['temp'])) {
return "Nhiệt độ ở {$city} là " . $data['main']['temp'] . "°C";
} else {
return 'Không lấy được dữ liệu thời tiết.';
}
}
7. Lưu ý khi kết nối API trong WordPress
Để tránh lỗi và tối ưu hiệu suất khi kết nối API trong WordPress, bạn nên chú ý các điểm sau:
- Kiểm tra API key trước khi code
- Đảm bảo API key đã được kích hoạt và có đủ quyền truy cập.
- Test nhanh bằng Postman hoặc dán link API vào trình duyệt xem có trả về dữ liệu không.
- Đọc kỹ tài liệu API
- Nắm rõ endpoint, tham số bắt buộc, giới hạn tần suất gọi API.
- Tránh việc thử mò vì dễ gọi sai hoặc bị khóa key.
- Luôn xử lý lỗi trả về từ API
- Sử dụng is_wp_error() để kiểm tra lỗi kết nối.
- Kiểm tra dữ liệu JSON trước khi hiển thị bằng isset() hoặc !empty().
- Giảm số lần gọi API bằng cách cache dữ liệu
- API thường giới hạn lượt gọi/ngày, nếu gọi quá nhiều sẽ bị khóa.
- Dùng Transient API hoặc plugin cache để chỉ gọi API khi cần (ví dụ: mỗi 10 phút).
- Bảo mật API key
- Không viết trực tiếp key vào code nếu plugin/theme chia sẻ công khai.
- Lưu trong wp-config.php hoặc biến môi trường và gọi bằng getenv().
- Xử lý khi API thay đổi cấu trúc dữ liệu
- Nhà cung cấp API có thể thay đổi field trả về → code sẽ lỗi.
- Luôn kiểm tra tồn tại dữ liệu trước khi truy cập mảng hoặc object.
- Test trên môi trường dev trước
- Tránh thử nghiệm trực tiếp trên website đang chạy thật.
- Nên test trên localhost hoặc staging site để không ảnh hưởng người dùng.
Ghi nhớ:
API không phải lúc nào cũng trả về đúng như bạn mong muốn, nên “luôn dự phòng” bằng cách kiểm tra lỗi, cache dữ liệu, và bảo mật key.
Video kết nối API trong WordPress
Kết luận
Biết cách kết nối API sẽ giúp bạn mở rộng khả năng lập trình WordPress vượt xa theme và plugin đơn thuần. Đây là cánh cửa để bạn đi xa hơn với:
- REST API
- Tích hợp bên thứ 3 (CRM, AI, thanh toán)
- Làm việc như một lập trình viên chuyên nghiệp
CHƯƠNG TRÌNH GIẢM 50% GIÁ TẤT CẢ CÁC GÓI HOSTING WORDPRESS => Link giảm 50%


