Weather Widget Generator
Tạo widget thời tiết có thể kéo thả trong page builder
by Nguyên Khôi · github.com/nguyenkhoi489/weather-widget-embed · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/nguyenkhoi489/weather-widget-embed/archive/refs/heads/master.zipReadme
Weather Widget Generator
Plugin tạo widget thời tiết có thể nhúng vào WordPress với khả năng tùy chỉnh giao diện và tạo mã embed.
📋 Mô tả
Weather Widget Generator là một plugin WordPress cho phép bạn tạo và tùy chỉnh widget hiển thị thông tin thời tiết với khả năng:
- Tùy chỉnh giao diện (màu sắc, kích thước)
- Chọn địa điểm và số ngày dự báo
- Tạo mã nhúng (iframe) để sử dụng trên website khác
- Hỗ trợ shortcode và widget sidebar
- Responsive trên mọi thiết bị
✨ Tính năng
- ✅ Widget có thể kéo thả: Dễ dàng thêm vào sidebar hoặc page builder
- ✅ Shortcode linh hoạt: Nhúng widget ở bất kỳ đâu với nhiều tùy chọn
- ✅ Tùy chỉnh màu sắc: Màu tiêu đề, nền, văn bản, viền
- ✅ Responsive Design: Tự động điều chỉnh theo kích thước màn hình
- ✅ Dự báo đa ngày: 3, 5 hoặc 7 ngày
- ✅ Mã nhúng iframe: Chia sẻ widget sang website khác
- ✅ AJAX loading: Tải dữ liệu không cần refresh trang
🚀 Cài đặt
Cách 1: Upload qua WordPress Admin
- Tải xuống file plugin (zip)
- Đăng nhập vào WordPress Admin
- Vào Plugins → Add New → Upload Plugin
- Chọn file zip và nhấn Install Now
- Nhấn Activate để kích hoạt plugin
Cách 2: Upload qua FTP
- Tải và giải nén file plugin
- Upload thư mục
weather-widget-embedvào/wp-content/plugins/ - Vào Plugins trong WordPress Admin
- Tìm "Weather Widget Generator" và nhấn Activate
📖 Hướng dẫn sử dụng
1. Sử dụng trong Sidebar Widget
- Vào Appearance → Widgets
- Tìm widget "Weather Widget Generator"
- Kéo thả vào sidebar mong muốn
- Cấu hình:
- Chọn thành phố
- Số ngày dự báo (3, 5, 7)
- Chiều rộng widget
- Nhấn Save
2. Sử dụng Shortcode
Thêm shortcode vào bài viết hoặc trang:
[weather_widget_generator]
Shortcode với tham số:
[weather_widget_generator city="ha-noi" days="5" width="600" bg_header_color="#0066cc"]
Các tham số khả dụng:
| Tham số | Mô tả | Giá trị mặc định | Ví dụ |
|---|---|---|---|
city |
Slug của thành phố | ha-noi |
ha-noi, ho-chi-minh |
days |
Số ngày dự báo | 3 |
3, 5, 7 |
width |
Chiều rộng widget (px) | 500 |
300 - 800 |
header_color |
Màu chữ tiêu đề | #ffffff |
#000000, #ffffff |
bg_header_color |
Màu nền tiêu đề | #16a34a |
#0066cc, #ff5733 |
text_color |
Màu văn bản nội dung | #000000 |
#333333, #666666 |
border_color |
Màu viền widget | #16a34a |
#cccccc, #0066cc |
3. Tạo mã nhúng (Embed Code)
- Vào Weather Widget trong menu WordPress Admin
- Hoặc thêm shortcode vào trang để hiển thị giao diện tùy chỉnh
- Điều chỉnh các thông số:
- Chọn địa điểm
- Kích thước widget
- Số ngày dự báo
- Màu sắc
- Nhấn "🔄 Cập nhật Preview" để xem kết quả
- Copy mã nhúng từ textarea
- Dán mã vào website khác
Ví dụ mã nhúng:
<iframe src="https://yourdomain.com/iframe/?city=ha-noi&days=3&header_color=%23ffffff&bg_header_color=%2316a34a&text_color=%23000000&border_color=%2316a34a" width="100%" height="400" frameborder="0" style="border:none;"></iframe>
4. Sử dụng trong Page Builder
Plugin tương thích với các page builder phổ biến như:
- Elementor
- WPBakery
- Beaver Builder
- Divi Builder
Cách sử dụng:
- Tìm widget HTML/Shortcode trong page builder
- Thêm shortcode
[weather_widget_generator]với các tham số - Preview và publish
🎨 Tùy chỉnh giao diện
Ví dụ các style khác nhau:
Style 1: Xanh dương chuyên nghiệp
[weather_widget_generator bg_header_color="#0066cc" border_color="#0066cc" width="600"]
Style 2: Cam năng động
[weather_widget_generator bg_header_color="#ff5733" border_color="#ff5733" header_color="#ffffff"]
Style 3: Tím hiện đại
[weather_widget_generator bg_header_color="#667eea" border_color="#764ba2" width="700"]
🔧 Yêu cầu hệ thống
- WordPress 5.0 trở lên
- PHP 7.2 trở lên
- Taxonomy "city" đã được tạo (cho danh sách thành phố)
📂 Cấu trúc thư mục
weather-widget-embed/
│
├── weather-widget-embed.php # File plugin chính
├── README.md # File hướng dẫn này
│
└── assets/ # Thư mục tài nguyên
├── weather-widget.js # JavaScript xử lý widget
└── admin-style.css # CSS cho admin panel
🔌 API & Hooks
AJAX Actions
Lấy dữ liệu thời tiết:
jQuery.ajax({
url: weatherWidget.ajax_url,
type: 'POST',
data: {
action: 'get_weather',
nonce: weatherWidget.nonce,
city: 'ha-noi'
}
});
Rewrite Rules
Plugin tự động tạo endpoint /iframe/ để hiển thị widget trong iframe:
https://yourdomain.com/iframe/?city=ha-noi&days=3
🐛 Xử lý sự cố
Widget không hiển thị?
- Kiểm tra plugin đã được kích hoạt
- Xóa cache của website
- Vào Settings → Permalinks và nhấn Save Changes để flush rewrite rules
Màu sắc không thay đổi?
- Nhấn nút "🔄 Cập nhật Preview" sau khi điều chỉnh màu
- Xóa cache trình duyệt
Mã nhúng không hoạt động?
- Kiểm tra URL trong iframe có đúng không
- Đảm bảo website cho phép nhúng iframe
- Kiểm tra rewrite rules đã được flush
📝 Changelog
Version 1.0.0
- ✨ Phát hành phiên bản đầu tiên
- ✅ Widget sidebar
- ✅ Shortcode support
- ✅ Iframe embed generator
- ✅ Color customization
- ✅ Multi-day forecast (3/5/7 days)
- ✅ Responsive design
- ✅ AJAX weather loading
👨💻 Tác giả
Nguyên Khôi
- Website: https://nguyenkhoi.dev/
📄 License
Plugin này được phát hành dưới giấy phép GPL v2 hoặc mới hơn.
🤝 Đóng góp
Mọi đóng góp đều được hoan nghênh! Nếu bạn tìm thấy lỗi hoặc có ý tưởng cải tiến, vui lòng:
- Tạo issue
- Fork repository
- Tạo pull request
📞 Hỗ trợ
Nếu bạn cần hỗ trợ hoặc có câu hỏi:
- Email: support@nguyenkhoi.dev
- Website: https://nguyenkhoi.dev/
Cảm ơn bạn đã sử dụng Weather Widget Generator! ⛅