diff --git a/admin-spa/src/routes/Products/index.tsx b/admin-spa/src/routes/Products/index.tsx
index 5f92ea9..4a0f165 100644
--- a/admin-spa/src/routes/Products/index.tsx
+++ b/admin-spa/src/routes/Products/index.tsx
@@ -329,7 +329,11 @@ export default function Products() {
el && (el.indeterminate = someSelected && !allSelected)}
+ ref={(el) => {
+ if (el) {
+ (el as any).indeterminate = someSelected && !allSelected;
+ }
+ }}
onCheckedChange={toggleAll}
aria-label={__('Select all')}
/>
diff --git a/includes/Api/ProductsController.php b/includes/Api/ProductsController.php
index 7febdcb..8f06279 100644
--- a/includes/Api/ProductsController.php
+++ b/includes/Api/ProductsController.php
@@ -347,6 +347,10 @@ class ProductsController {
'hide_empty' => false,
]);
+ if (is_wp_error($terms)) {
+ return new WP_REST_Response([], 200); // Return empty array on error
+ }
+
$categories = [];
foreach ($terms as $term) {
$categories[] = [
@@ -370,6 +374,10 @@ class ProductsController {
'hide_empty' => false,
]);
+ if (is_wp_error($terms)) {
+ return new WP_REST_Response([], 200); // Return empty array on error
+ }
+
$tags = [];
foreach ($terms as $term) {
$tags[] = [
|