ideal.shop

FAQ

Troubleshoot feed limits, theme conflicts, prices, and navigation.

Use these checks when the standard ideal.shop setup imports incomplete data or behaves differently from the native storefront.

Incomplete Feeds #

Check the actual feed response before treating a successful Clerk.io sync as complete. By default, each data type is limited to 50 records.

Set products and categories high enough for the full catalogue and orders high enough for the intended historical import. Check for duplicated parameters or a second ?, then compare source, feed, and imported counts.

A count exactly equal to a limit suggests truncation. If the feed contains the missing record but Clerk.io does not, inspect sync logs and data configuration. If it is absent from the feed, investigate the platform export or visibility rules.

For a large export that times out, reduce the requested historical order count to establish a successful baseline, then agree a complete export method with ideal.shop. A smaller successful response is not evidence of complete history.

Fodmagasinet reported an HTTP 524 while requesting 100,000 orders. This is an example of an export timeout, not a recommended universal maximum.

Do not assume the endpoint supports pagination, offsets, cursors, or date filtering. Ask the platform developer which options are supported and how to detect the end of the export. Verify Clerk.io’s importer can consume that method before using it.

See ongoing imports for restoring the default order window without disabling imports. After an outage, temporarily increase order coverage and check for gaps.

Hidden Categories #

Compare hidden or unpublished categories with their imported records and the category IDs referenced by products.

Correct visibility rules in the export or import mapping, and sync again. Verify both the category records and product references afterwards. Hiding a category in a Search Design does not repair inconsistent imported data.

Incorrect Prices #

Compare a simple product, a discounted product, and a variant product with the native webshop, including tax and currency.

If a parent imports with price: 0 while variants have paid prices, fix the source or import mapping. A From label showing the minimum imported variant price can improve the card, but sorting still uses the imported price configured for that sort.

Use a single verified regular-price field for discount calculations and strike-through prices. Do not assume list_price or retail_price exists because a generic template uses it.

Blurry Images #

Inspect the image’s loaded dimensions against its actual rendered card size and screen density. A large CSS box cannot add detail to a small source image.

Fodmagasinet used a change to its image URL to request a larger image, with a /450-0/ size segment and 450-pixel loaded images verified during setup. This was specific to its image service; it is not a transformation to apply to every ideal.shop image URL.

Before changing URLs, verify the image service’s supported sizes and the returned image, aspect ratio, and loading behaviour. Prefer a correct source image field or supported image-service option over an unverified string replacement.

Variant Purchasing #

Use the native flow for simple products and open the product page when required options have not been selected.

Fodmagasinet’s custom adapter submitted a parent ID through the native purchase functions and redirected only for a specific active-variants rejection. That adapter depends on the platform’s response message and can break if it changes.

Do not install it as a universal variant solution. Reuse verified variant metadata or a supported native selection flow, or keep a product-page link. Other errors must retain their native handling.

Search Conflicts #

If two result panels appear, inspect both the native dropdown and mobile search panel. Check their open/close handlers and computed visibility while Clerk.io Search is open.

Scope any suppression to the relevant Search component or open state. Retest typing, arrow keys, Enter on both keydown and keyup, form submission, Escape, basket access, and reopening Search.

If Close or Escape changes the page or URL unexpectedly, inspect the native panel’s history handling. Closing an overlay must not depend on navigating Back to an assumed history entry.

When results disappear after navigation, compare a fresh page load with a native link transition and Back/Forward.

Check Settings > Features > SPA Auto Detect Changes, the current page IDs, whether the injection target still exists, and whether the Element makes a new request when its context changes.

If a product lacks description tabs, fix the placement target or add a verified fallback. If the target exists but the Element remains missing or stale, collect the affected URLs, navigation steps, console errors, and request evidence for investigation.

Fodmagasinet used a temporary detached-instance cleanup script during Preview investigation. It relies on Clerk.io internals and must not become the default installation method. Keep any such workaround separately documented with its scope and removal plan, then retest after the supported fix.

Duplicate Elements #

Check for the same Element installed through native ideal.shop blocks, injection, and manually embedded code at the same time.

Keep one intended installation per placement. Inspect the DOM and Network panel after repeated navigation; distinguish legitimate requests from separate Elements from repeated requests for one placement.

If native recommendation displays are also visible, disable their display without deleting manual product relationships. Recheck that the Clerk.io replacement works before removing the native display.