🚀 Tự động hóa các tác vụ WordPress của bạn với Gato GraphQL v2.1 mới
Chúng tôi vui mừng thông báo rằng Gato GraphQL v2.1 đã được phát hành!
Với phiên bản mới này và các tiện ích mở rộng PRO, bạn có thể sử dụng GraphQL làm công cụ tự động hóa, tận dụng GraphQL persisted queries để tự động hóa các tác vụ liên quan đến dữ liệu trên trang WordPress của bạn.
Dưới đây là tất cả các thay đổi được thêm vào v2.1 (phiên bản ngắn hơn có sẵn trong Ghi chú phát hành trên GitHub).
Hỗ trợ cung cấp Cấu hình Schema khi gọi Internal GraphQL Server
Giờ đây chúng ta có thể chỉ định Cấu hình Schema nào sẽ áp dụng khi thực thi một query qua Internal GraphQL Server (tức là trực tiếp trong ứng dụng PHP, không qua endpoint).
Tính năng mới này nâng cấp tiện ích mở rộng Internal GraphQL Server: Nó hiện chấp nhận tham số $schemaConfigurationIDOrSlug trên các phương thức executeQuery và executeQueryInFile của lớp GraphQLServer, và đã tự động trích xuất cấu hình schema được sử dụng bởi persisted query trong executePersistedQuery:
class GraphQLServer {
public static function executeQuery(
string $query,
array $variables = [],
?string $operationName = null,
+ // Accept parameter
+ int|string|null $schemaConfigurationIDOrSlug = null,
): Response {
// ...
}
public static function executeQueryInFile(
string $file,
array $variables = [],
?string $operationName = null,
+ // Accept parameter
+ int|string|null $schemaConfigurationIDOrSlug = null,
): Response {
// ...
}
public static function executePersistedQuery(
WP_Post|string|int $persistedQuery,
array $variables = [],
?string $operationName = null,
+ // Schema Configuration is taken directly from the Persisted Query
): Response {
// ...
}GraphQL làm công cụ tự động hóa [PRO]
Tính năng trên cũng cung cấp nền tảng để nâng cấp tiện ích mở rộng Automation.
Tiện ích mở rộng Automation hiện cung cấp giao diện người dùng "tự động hóa" (trực tiếp qua trình soạn thảo WordPress) gọi là Automation Configurator. Trigger của tự động hóa là bất kỳ action hook nào của WordPress, và hành động được thực hiện là việc thực thi một GraphQL persisted query.

Ví dụ, khi tạo một bài viết mới, quy tắc tự động hóa Add comments block to new post (thực thi persisted query cùng tên) sẽ kiểm tra xem khối core/comments có hiện diện không và, nếu không, sẽ thêm nó vào cuối bài viết:

Dưới đây là một số cách bạn có thể sử dụng công cụ tự động hóa:
- Tạo (và tối ưu hóa) ảnh đại diện cho các bài viết mới bằng AI
- Thêm một khối bắt buộc vào bài viết khi được xuất bản
- Thay thế
httpbằnghttpstrong tất cả nguồn ảnh và liên kết khi bài viết được cập nhật - Gửi email cho quản trị viên khi có bài viết mới
- Gửi email cho người dùng có bình luận nhận được phản hồi mới
- [Multisite] Dịch một bài viết mới sang các ngôn ngữ khác nhau và thêm các bài viết đã dịch vào từng trang
- Thực thi một hành động trên dịch vụ bên ngoài (ví dụ: tự động chia sẻ bài viết mới lên Facebook)
Vì bạn có thể soạn thảo GraphQL persisted queries và các quy tắc tự động hóa trực tiếp trong wp-admin, chỉ mất rất ít thời gian để tạo ra một pipeline tự động hóa được tùy chỉnh hoàn toàn, phù hợp với nhu cầu của bạn.
Và vì không có ràng buộc nào về đầu vào (GraphQL query có thể tương tác với tất cả dữ liệu trong WordPress và kết nối với bất kỳ dịch vụ bên ngoài nào qua HTTP client), bạn có thể đáp ứng 100% yêu cầu của mình.
(Các plugin tự động hóa thường đáp ứng 95% nhu cầu của chúng ta, vì chúng ta thường thấy rằng một số đầu vào cần thiết chưa được ánh xạ.)
Một số quy tắc tự động hóa đã được plugin tạo sẵn (với trạng thái draft, vì vậy chúng phải được cập nhật thành publish để có hiệu lực). Bạn có thể sử dụng chúng ngay, và cũng tham khảo chúng như các ví dụ để tạo tự động hóa của riêng mình (danh sách này sẽ được mở rộng trong các phiên bản tiếp theo):
- Add comments block to new post
- Insert block in new post
- Send notification email to admin when there is a new post
- Generate a post's featured image using AI (and optimize it) if a new post has none

Persisted query được xác định sẵn "Insert block in post"
GraphQL persisted query mới được thêm vào "Insert block in post" cho phép chèn một khối vào bài viết. Nó xác định khối thứ n của một loại nhất định (wp:paragraph theo mặc định) trong bài viết, và đặt nội dung HTML của khối tùy chỉnh được cung cấp ngay sau đó.
Khi sử dụng với tiện ích mở rộng Automation, persisted query này có thể được dùng để tự động chèn các khối bắt buộc vào bài viết mới được xuất bản (ví dụ: khối CTA để quảng bá một chiến dịch đang diễn ra).
Cải tiến
- Nếu khởi tạo service container từ cache thất bại, chuyển về khởi tạo đối tượng PHP từ bộ nhớ (#2638)
- Gán operationName duy nhất cho tất cả các persisted queries được xác định sẵn (#2644)
- Cải thiện thông báo lỗi khi lấy các khối từ bài viết có nội dung bị lỗi
- Hoàn thiện tài liệu cho tiện ích mở rộng Automation (#2651)
- Trong persisted query được xác định sẵn "Generate a post's featured image using AI and optimize it", chỉ thực thi logic nếu tiêu đề bài viết không trống (#ec931dd)
Đã sửa
- Lỗi trong thành phần JS multi-control được sử dụng bởi các tiện ích mở rộng (Access Control, Cache Control và Field Deprecation) hiển thị "undefined" trên khối trong Cấu hình Schema (#2639)
- Lỗi trong các thay thế bằng regex trong các persisted queries được xác định sẵn (#2649)
- Tránh cài đặt lại dữ liệu thiết lập plugin khi hủy kích hoạt/kích hoạt lại plugin (#2641)
- Xử lý lỗi khi truyền WP_Post làm biến GraphQL vào Internal GraphQL Server (#2652)