Connect this channel to start managing listings.
@endif {{-- Action button --}} @if ($connected) @else Connect Channel @endifNo products found
@if ($this->search !== '') No products match "{{ $this->search }}" @elseif ($this->statusFilter !== 'all') No products with status "{{ str_replace('_', ' ', $this->statusFilter) }}" @else No active SKU mappings for this channel @endif
| Product | Shopify SKU | Price | Status | Last Synced | |||
|---|---|---|---|---|---|---|---|
| {{-- Thumbnail --}} |
@if ($row['thumbnail'])
|
{{-- Product name --}}
{{ $row['attributes']['title'] ?? $row['product_name'] }}
@if (!empty($row['attributes']['title']) && $row['attributes']['title'] !== $row['product_name'])
{{ $row['product_name'] }} @endif @if ($row['product_sku']) {{ $row['product_sku'] }} @endif |
{{-- Shopify SKU (linked) or Not Linked badge --}}
@if ($storefrontUrl) {{ $row['shopify_sku'] }} @elseif ($row['shopify_sku']) {{ $row['shopify_sku'] }} @else — @endif | {{-- Price --}}£{{ $row['price'] }} | {{-- Status badge --}}
{{ match($row['listing_status']) {
'listed' => 'Listed',
'needs_update'=> 'Needs Update',
'error' => 'Error',
'not_mapped' => 'Not Listed',
'not_listed' => 'Pending Sync',
default => 'Pending Sync',
} }}
@if ($isError && $row['last_error'])
{{ \Illuminate\Support\Str::limit($row['last_error'], 45) }} @endif |
{{-- Last synced --}}
{{ $row['last_synced_at'] ?? '—' }} | {{-- Actions --}}
@if (! $isMapped)
{{-- Not listed — Link to existing Shopify variant --}}
@else
{{-- Mapped — Edit + optional Retry (errors only) + Unlink --}}
@if ($isError)
@endif
@endif
|
This will remove all queued sync jobs and reset those products back to Needs Update.
Jobs already being processed by the queue worker cannot be stopped and will complete normally.
{{-- Actions --}}This will mark all {{ number_format($statusCounts['listed'] ?? 0) }} listed {{ str('product')->plural($statusCounts['listed'] ?? 0) }} as Needs Update so they are pushed to Shopify on the next sync.
Switch to the Needs Update tab after confirming and use Sync Selected or run a bulk sync to push them all to Shopify.
{{-- Actions --}}@if ($this->statusFilter === 'needs_update') Queues every product marked Needs Update for a Shopify sync. Jobs run in the background — watch the console for progress. @else Queues all unlisted and pending products for Shopify sync. Jobs run in the background — watch the console for progress. @endif
{{ count($orphanList) }} Shopify {{ str('collection')->plural(count($orphanList)) }} found that no longer match the Cydekick category tree. This will permanently delete them from Shopify.
Shopify URL redirects are not created automatically. If any of these collections are live and indexed by Google, set up manual redirects in Shopify before deleting.
{{-- Actions --}}