Skip to Content
Balinot ThemeFAQs and reviews layouts

FAQs And Reviews Layouts

Global layout settings live in Balinot > Site.

Settings source:

  • Native storage: balinot_theme_settings[site_options]
  • FAQ key: site_options[faqs_settings][faqs_layout]
  • FAQ intro key: site_options[faqs_settings][faqs_intro]
  • Review key: site_options[reviews_settings][reviews_layout]
  • Review CTA link: site_options[reviews_settings][reviews_archive_link]

Admin UI:

  • wp-content/themes/balinot/setup/admin/site-options-page.php

FAQ rendering flow:

  • Router: templates/partials/general/faqs.php
  • Allowed layouts: split, centered
  • Components:
    • templates/components/faqs-1.php
    • templates/components/faqs-2.php

Review rendering flow:

  • Router: templates/partials/general/reviews.php
  • Allowed layouts: featured, cards, stories
  • Components:
    • templates/components/reviews-1.php
    • templates/components/reviews-2.php
    • templates/components/reviews-3.php

Content source:

  • FAQs are stored as the balinot_faq custom post type from modules/21-faqs.php.
  • Reviews are stored as the balinot_review custom post type from modules/22-reviews.php.
  • Both support page and product category matching through ACF relationship fields.

How to add a new FAQ layout:

  1. Create a new component in templates/components/, for example faqs-3.php.
  2. Update the allowed values in setup/includes/theme-options.php.
  3. Add the new option to the FAQ select field in setup/admin/site-options-page.php.
  4. Update templates/partials/general/faqs.php so the router can map the new layout to the new component.
  5. If the markup needs new JS behavior, make sure it still works with initFaqAccordions() from assets/js/theme.js.

How to add a new review layout:

  1. Create a new component in templates/components/, for example reviews-4.php.
  2. Update the allowed values in setup/includes/theme-options.php.
  3. Add the new option to the review select field in setup/admin/site-options-page.php.
  4. Update templates/partials/general/reviews.php to route to the new component.
  5. If the component uses Swiper, define a new swiper config in the router.

Rule to keep:

  • The router partial should prepare data and choose the component.
  • The component file should focus on markup only.
Last updated on