woocommerce
SKILL.md
WooCommerce
Overview
WooCommerce is the most popular e-commerce platform — powers ~40% of all online stores. It's a free WordPress plugin with extensions for payments, shipping, subscriptions, and multi-currency. Fully customizable with PHP hooks and REST API.
Instructions
Step 1: REST API Integration
// lib/woo.ts — WooCommerce REST API client
import WooCommerceRestApi from '@woocommerce/woocommerce-rest-api'
const woo = new WooCommerceRestApi({
url: 'https://store.example.com',
consumerKey: process.env.WOO_KEY!,
consumerSecret: process.env.WOO_SECRET!,
version: 'wc/v3',
})
// List products
const { data: products } = await woo.get('products', { per_page: 20, status: 'publish' })
// Create product
await woo.post('products', {
name: 'Premium T-Shirt',
type: 'simple',
regular_price: '29.99',
description: 'High-quality cotton t-shirt',
categories: [{ id: 15 }],
images: [{ src: 'https://example.com/tshirt.jpg' }],
})
// Get orders
const { data: orders } = await woo.get('orders', { status: 'processing' })
// Update order status
await woo.put(`orders/${orderId}`, { status: 'completed' })
Step 2: Custom Hooks (PHP)
// functions.php — WooCommerce customization hooks
// Add custom field to checkout
add_action('woocommerce_after_order_notes', function($checkout) {
woocommerce_form_field('delivery_notes', [
'type' => 'textarea',
'label' => 'Delivery Notes',
'placeholder' => 'Special instructions for delivery',
], $checkout->get_value('delivery_notes'));
});
// Custom discount logic
add_action('woocommerce_cart_calculate_fees', function($cart) {
if ($cart->get_subtotal() > 100) {
$cart->add_fee('Bulk discount', -10); // $10 off orders over $100
}
});
Step 3: Webhooks
// api/woo/webhook.ts — Handle WooCommerce events
export async function POST(req: Request) {
const event = req.headers.get('x-wc-webhook-topic')
const data = await req.json()
switch (event) {
case 'order.created':
await notifySlack(`New order #${data.id}: $${data.total} from ${data.billing.email}`)
break
case 'order.completed':
await sendThankYouEmail(data.billing.email, data)
break
}
return new Response('OK')
}
Guidelines
- WooCommerce is free; costs come from hosting and premium extensions.
- Use REST API for headless commerce — build custom frontends with Next.js/React.
- Performance: WooCommerce on shared hosting struggles past ~500 products. Use dedicated hosting or consider Medusa for headless.
- Extensions marketplace has 800+ plugins for payments, shipping, subscriptions, etc.
Weekly Installs
1
Repository
terminalskills/skillsGitHub Stars
15
First Seen
3 days ago
Security Audits
Installed on
amp1
cline1
augment1
opencode1
cursor1
kimi-cli1