Skip to content

Get Theme Customisation

About

The themeCustomization query retrieves detailed information about a single theme customisation by its ID. Use this query to:

  • Display specific theme customisation details
  • Fetch carousel or slider configurations by ID
  • Retrieve footer links or static content sections
  • Access all translations for a specific customisation
  • Get customisation metadata including timestamps
  • Display channel-specific customisations
  • Access complete JSON configuration options

This query returns comprehensive customisation data including all translations, display settings, and channel information.

Arguments

ArgumentTypeRequiredDescription
idID!✅ YesTheme Customization ID. Supports two formats: numeric ID (e.g., 1) or IRI format (e.g., /api/theme_customizations/1). Required.

Possible Returns

FieldTypeDescription
idID!Unique theme customization API identifier.
_idInt!Numeric customization ID.
themeCodeString!Theme code/identifier (e.g., 'default').
typeString!Customization type (e.g., 'footer_links', 'image_carousel', 'product_carousel', 'category_carousel', 'static_content').
nameString!Human-readable name of the customization.
sortOrderIntSort order for display.
statusStringStatus flag (0 = inactive, 1 = active).
channelIdStringAssociated channel ID.
createdAtDateTime!Customization creation timestamp.
updatedAtDateTime!Last update timestamp.
translationThemeCustomizationTranslation!Default locale translation.
translation.idID!Translation identifier.
translation._idInt!Numeric translation ID.
translation.themeCustomizationIdString!Associated customization ID.
translation.localeString!Language locale code (e.g., 'en', 'ar', 'fr').
translation.optionsString!JSON-formatted options/configuration for this translation.
translationsThemeCustomizationTranslationCollection!All available translations.
translations.edges[Edge!]!Translation edges with cursors.
translations.edges.nodeThemeCustomizationTranslation!Individual translation.
translations.edges.cursorString!Pagination cursor for this translation.
translations.pageInfoPageInfo!Pagination info for translations.
translations.pageInfo.hasNextPageBoolean!More translations available.
translations.pageInfo.hasPreviousPageBoolean!Previous translations available.
translations.pageInfo.startCursorStringFirst translation cursor.
translations.pageInfo.endCursorStringLast translation cursor.
translations.totalCountInt!Total translations for this customization.

Customisation Types

TypeDescription
image_carouselImage slider/carousel on home page
product_carouselProduct carousel display
category_carouselCategory carousel display
static_contentHTML/CSS static sections
footer_linksFooter navigation links
services_contentServices information blocks

Use Cases

Use the "Basic" example to fetch and display a specific carousel configuration.

2. Multi-Language Support

Use the "Complete Details" example to get all translations for rendering in different languages.

Fetch footer links customisation and display them in the footer section.

4. Static Content Sections

Retrieve HTML/CSS static content sections for rendering on pages.

Best Practices

  1. Use Correct ID Format - Use either numeric ID or IRI format consistently
  2. Cache Results - Theme customisations change infrequently, cache the response
  3. Parse JSON Options - The options field contains JSON; parse it in your application
  4. Check Status - Verify status is active before displaying
  5. Handle Multiple Translations - Fetch all translations for multi-language support
  6. Validate Channel - Ensure customisation is for the correct channel

Released under the MIT License.