Integrations
@if($store)
Marketing and shipping extensions for {{ $store->site_name ?? $store->site_url }}.
@else
Connect a store to see which WooCommerce extensions are installed and configured.
@endif
@if($store)
@endif
@if($store && ! $reachable)
Store unreachable — update the Ladill plugin on WordPress
@endif
@if(! $store)
@endif
@if($store && ($cached ?? false))
Status cached for {{ (int) config('woo.integrations_cache_ttl_seconds', 300) }} seconds. Use Refresh status for the latest from WordPress.
@endif
@foreach($integrations as $integration)
@php
$state = $integration['state'];
$badge = match ($state) {
'connected' => ['Connected', 'bg-emerald-50 text-emerald-700 ring-emerald-200'],
'available', 'needs_setup' => $integration['installed']
? ['Needs setup', 'bg-amber-50 text-amber-800 ring-amber-200']
: ['Not installed', 'bg-slate-100 text-slate-600 ring-slate-200'],
'not_installed' => ['Not installed', 'bg-slate-100 text-slate-600 ring-slate-200'],
'no_store' => ['No store', 'bg-slate-100 text-slate-600 ring-slate-200'],
default => ['Unavailable', 'bg-rose-50 text-rose-700 ring-rose-200'],
};
@endphp
{{ $integration['category'] }}
{{ $integration['name'] }}
{{ $badge[0] }}
{{ $integration['description'] }}
@if($integration['summary'])
{{ $integration['summary'] }}
@endif
@if($integration['key'] === 'shipping' && ! empty($integration['details']['woocommerce_shipping']))
WooCommerce Shipping
@if(! empty($integration['details']['labels_ready']))
· labels enabled
@else
· labels not connected
@endif
@endif
@if($integration['manage_url'])
Manage in WordPress
@elseif($integration['install_url'] && in_array($state, ['not_installed', 'no_store', 'unavailable'], true))
Get extension
@endif
@if($integration['docs_url'])
Docs
@endif
@endforeach
Ladill surfaces official WooCommerce extensions installed on your store. OAuth, catalog sync, and ad setup still happen in WordPress — open Manage in WordPress to finish configuration.