๐๏ธ Integrasi WooCommerce telah hadir di Gato GraphQL!
Ekstensi WooCommerce kini tersedia untuk Gato GraphQL! ๐

Ekstensi terbaru ini memungkinkan kita mengambil data dari WooCommerce, termasuk produk, pesanan, pelanggan, kupon, dan lain-lain.
Berikut adalah contoh-contoh queries untuk mengambil data dari toko WooCommerce Anda.
Produk (Semua)
Query ini mengambil semua produk beserta informasi dasarnya:
query FetchAllProducts {
woocommerceProducts {
__typename
id
name
slug
url
urlPath
sku
...on WooCommercePriceableProductOrProductVariation {
price
priceFormatted
regularPrice
regularPriceFormatted
salePrice
salePriceFormatted
onSale
}
status
type
featured
totalSales
averageRating
ratingCount
image {
id
src
altText
title
caption
}
categories {
id
name
slug
}
tags {
id
name
slug
}
brands {
id
name
slug
}
}
woocommerceProductsCount
}Produk (berdasarkan Tipe)
Produk Sederhana
Query ini mengambil semua produk sederhana:
query FetchSimpleProducts {
woocommerceSimpleProducts {
__typename
id
name
slug
url
urlPath
sku
description
shortDescription
price
priceFormatted
regularPrice
regularPriceFormatted
salePrice
salePriceFormatted
onSale
status
type
featured
totalSales
averageRating
ratingCount
image {
id
src
altText
title
caption
}
categories {
id
name
slug
}
tags {
id
name
slug
}
brands {
id
name
slug
}
# Stock management fields
manageStock
stockQuantity
stockStatus
backorders
backordersAllowed
backordered
soldIndividually
lowStockThreshold
# Shipping fields
isVirtual
weight
length
width
height
dimensions
shippingClassID
shippingClass {
id
name
slug
description
count
}
# Downloadable fields
isDownloadable
downloadLimit
downloadExpiry
downloads
downloadsCount
# Tax fields
taxStatus
taxClass
# Cross-sell fields
crossSellIDs
crossSells {
id
name
slug
sku
}
}
woocommerceSimpleProductsCount
}Produk Eksternal
Query ini mengambil semua produk eksternal:
query FetchExternalProducts {
woocommerceExternalProducts {
__typename
id
name
slug
url
urlPath
sku
description
shortDescription
price
priceFormatted
regularPrice
regularPriceFormatted
salePrice
salePriceFormatted
onSale
status
type
featured
totalSales
averageRating
ratingCount
image {
id
src
altText
title
caption
}
categories {
id
name
slug
}
tags {
id
name
slug
}
brands {
id
name
slug
}
# External product specific fields
externalURL
buttonText
# Tax fields
taxStatus
taxClass
}
woocommerceExternalProductsCount
}Produk Grup
Query ini mengambil semua produk grup:
query FetchGroupProducts {
woocommerceGroupProducts {
__typename
id
name
slug
url
urlPath
sku
description
shortDescription
status
type
featured
totalSales
averageRating
ratingCount
image {
id
src
altText
title
caption
}
categories {
id
name
slug
}
tags {
id
name
slug
}
brands {
id
name
slug
}
# Group product specific fields
hasChildren
childrenCount
minPrice
maxPrice
minPriceFormatted
maxPriceFormatted
children {
id
name
slug
sku
}
}
woocommerceGroupProductsCount
}Produk Variabel
Query ini mengambil semua produk variabel:
query FetchVariableProducts {
woocommerceVariableProducts {
__typename
id
name
slug
url
urlPath
sku
description
shortDescription
status
type
featured
totalSales
averageRating
ratingCount
image {
id
src
altText
title
caption
}
categories {
id
name
slug
}
tags {
id
name
slug
}
brands {
id
name
slug
}
# Variable product specific fields
hasVariations
variationsCount
minPrice
maxPrice
minRegularPrice
maxRegularPrice
minSalePrice
maxSalePrice
priceRange
variations {
id
name
slug
sku
}
defaultAttributes {
taxonomy
termSlug
termObject {
id
name
slug
}
}
# Cross-sell fields
crossSellIDs
crossSells {
id
name
slug
sku
}
# Tax fields
taxStatus
taxClass
}
woocommerceVariableProductsCount
}Pelanggan
Query ini mengambil semua pelanggan:
query FetchCustomers {
woocommerceCustomers {
__typename
id
username
email
firstName
lastName
displayName
description
createdDate
createdDateStr
formattedCreatedDateStr: createdDateStr(format: "d/m/Y H:i:s")
modifiedDate
modifiedDateStr
formattedModifiedDateStr: modifiedDateStr(format: "d/m/Y H:i:s")
role
billing
shipping
isPayingCustomer
avatarURL
totalSpent
totalSpentFormatted
orderCount
lastOrderID
lastOrder {
id
orderNumber
status
total
date
}
orders {
id
orderNumber
status
total
date
}
ordersCount
}
woocommerceCustomersCount
}Pesanan
Query ini mengambil semua pesanan:
query FetchOrders {
woocommerceOrders {
__typename
id
orderNumber
orderKey
date
modifiedDate
dateStr
formattedDateStr: dateStr(format: "d/m/Y H:i:s")
modifiedDateStr
formattedModifiedStr: modifiedDateStr(format: "d/m/Y H:i:s")
status
isPaid
currency
total
totalFormatted
subtotal
subtotalFormatted
totalTax
totalTaxFormatted
totalShipping
totalShippingFormatted
totalDiscount
totalDiscountFormatted
totalDiscountTax
totalDiscountTaxFormatted
shippingTotal
shippingTotalFormatted
shippingTax
shippingTaxFormatted
cartTax
cartTaxFormatted
totalFee
totalFeeFormatted
customerID
customer {
id
username
email
firstName
lastName
displayName
}
customerNote
billingAddress
shippingAddress
hasCompletedStatus: hasStatus(status: "completed")
hasPendingStatus: hasStatus(status: "pending")
hasProcessingStatus: hasStatus(status: "processing")
hasOnHoldStatus: hasStatus(status: "on-hold")
hasCancelledStatus: hasStatus(status: "cancelled")
hasRefundedStatus: hasStatus(status: "refunded")
hasFailedStatus: hasStatus(status: "failed")
hasAnyCompletedOrProcessingStatus: hasAnyStatus(statuses: ["completed", "processing"])
hasAnyPendingOrOnHoldStatus: hasAnyStatus(statuses: ["pending", "on-hold"])
paymentMethod
paymentMethodTitle
transactionID
datePaid
datePaidStr
formattedDatePaidStr: datePaidStr(format: "d/m/Y H:i:s")
dateCompleted
dateCompletedStr
formattedDateCompletedStr: dateCompletedStr(format: "d/m/Y H:i:s")
cartHash
newOrderEmailSent
orderCurrency
orderVersion
pricesIncludeTax
discountTotal
discountTax
refunded
remainingRefundAmount
itemCount
items {
id
name
quantity
subtotal
subtotalFormatted
total
totalFormatted
totalTax
totalTaxFormatted
productID
variationID
reducedStockNumber
product {
id
name
slug
sku
}
variation {
id
name
slug
sku
}
}
refunds {
id
amount
amountFormatted
reason
status
}
downloadPermissionsGranted
needsPayment
needsProcessing
isDownloadPermitted
hasDownloadableItem
}
woocommerceOrdersCount
}Pengembalian Dana
Query ini mengambil semua pengembalian dana:
query FetchRefunds {
woocommerceRefunds {
__typename
id
orderID
order {
id
orderNumber
status
}
amount
amountFormatted
reason
refundedBy {
id
name
email
}
isPaymentRefundedViaAPI
refundType
date
modifiedDate
dateStr
formattedDateStr: dateStr(format: "d/m/Y H:i:s")
modifiedDateStr
formattedModifiedDateStr: modifiedDateStr(format: "d/m/Y H:i:s")
status
}
woocommerceRefundsCount
}Ulasan
Query ini mengambil semua ulasan produk:
query FetchProductReviews {
woocommerceReviews {
__typename
id
content
author
authorEmail
rating
verified
approved
date
dateStr
productID
product {
id
name
}
}
woocommerceReviewsCount
}Kupon
Query ini mengambil semua kupon:
query FetchCoupons {
woocommerceCoupons {
__typename
id
code
amount
amountFormatted
dateExpires
dateExpiresStr
formattedDateExpiresStr: dateExpiresStr(format: "d/m/Y H:i:s")
discountType
description
date
modifiedDate
dateStr
formattedDateStr: dateStr(format: "d/m/Y H:i:s")
modifiedDateStr
formattedModifiedDateStr: modifiedDateStr(format: "d/m/Y H:i:s")
usageCount
individualUse
productIDs
products {
id
name
slug
}
productsCount
excludedProductIDs
excludedProducts {
id
name
slug
}
excludedProductsCount
usageLimit
usageLimitPerUser
limitUsageToXItems
freeShipping
productCategoryIDs
productCategories {
id
name
slug
}
productCategoriesCount
excludedProductCategoryIDs
excludedProductCategories {
id
name
slug
}
excludedProductCategoriesCount
productBrandIDs
productBrands {
id
name
slug
}
productBrandsCount
excludedProductBrandIDs
excludedProductBrands {
id
name
slug
}
excludedProductBrandsCount
excludeSaleItems
minimumAmount
minimumAmountFormatted
maximumAmount
maximumAmountFormatted
emailRestrictions
usedByCustomerIDs
usedByCustomers {
id
username
email
firstName
lastName
displayName
}
usedByCustomersCount
}
woocommerceCouponsCount
}Dan Lainnya
Anda dapat menemukan lebih banyak contoh di sumber daya berikut: