Skip to content

CMS

The CMS navigation group is where the content and web team edits everything the public site (byvolare.com) renders as marketing content. It does not touch bookings, pricing, or inventory — those live elsewhere in Arkana. Every item here writes structured, translatable content that the frontend fetches through the CMS Content API.

  • Content / web editors publishing and translating site copy.
  • Marketing, for hero slides, collections, and celebrity landing pages.

Singleton record (only one can exist) for the site home page. Manages the hero media plus per-locale translations: hero title/description, the hero slides that feed the full-viewport hero slider on the home page, the contact intro block and the accordion (each with a Show on website switch, off by default: while off the section is hidden on that market’s home but its content is kept), the contact closing block (the “Habla con un especialista” band, whose caption and button label are also reused at the end of country and trip pages), the featured celebrity section, and the experience carousel. The “El viaje que siempre imaginaste” band on the ES home is fixed copy in the website code, not editable here.

Hero slides come in three types, each drawing from a different source:

  • Celebrity — based on a Celebrity Page. Editable per slide/locale: eyebrow, title, subtitle, description, media, CTA (label + link).
  • Trip (product) — based on a ProductByMarket. Editable per slide/locale: eyebrow, title, route, includes line, price line, media, CTA label.
  • Generic — a brand slide with its own copy; no source record, so every field is typed directly.

For Celebrity and Trip slides each editable field is an override: fill it to make the home hero differ from the source page/trip, or leave it empty to keep the value pulled from the referenced record. Two fields stay locked — a Trip slide’s CTA always links to the product’s page, and the celebrity trailer play button isn’t editable. Maximum 6 slides per locale.

Singleton record for the About Us page (“Nuestra forma de viajar”). Per locale it manages the page’s sections, each with a Show on website switch: the hero (title and photo), Press (intro and article cards with logo, headline and link), What sets us apart (the three photo cards, which also feed the “El viaje que siempre imaginaste” band on the home page), and the older header (title, slug, captions, cover/video), description and featured celebrity blocks. In Spanish the older blocks are kept but switched off. It also holds the list of trailer cards.

List resource (many records) for celebrity/trailer landing pages. Each record is tied to one Market and written in that market’s language — there is no translation table. Manages poster + background media (background is required), an optional YouTube trailer, title/subtitle/description, the collections the page belongs to (selection order sets public display order), metadata (year, duration), and CTAs including a link to a destination product.

List resource for thematic groupings of trips/experiences (e.g. wildlife, diving), used in the navbar collections menu and on collection listing pages. Manages the slug, a required collection color (see below), hero image, and per-locale label/title/description. Each collection links to the product templates it features (ordered).

Nested under Collections. A fixed, seed-only palette of approved hex colors for collections — admins can edit an existing color’s hex value, but new colors and deletions are blocked (introduced via seeder/migration only). Editing a color updates every collection using that category. Use this to keep collection branding on-palette.

List resource for destination countries shown on region and country pages. Each country belongs to a Region. Manages the slug, hero image/video, the products attached per market, and per-locale content split into two views: Region page content (name, description, tagline, navbar eyebrow, country stats such as population/area/currency/best time/languages) and Country page experiences (a repeater of place cards with image/video, collection tag, and a primary product).

List resource for the top-level geographic taxonomy. A region has many countries. Used on the home page regions carousel and on region pages. Manages the slug, hero/full-width image, watermark icon, and per-locale content (name, description, quote), CTA overrides (inherit from Home unless set), and an experiences intro + phases block linking related products.

Nested under Regions. Admin-only settings page for the global, per-locale UI labels reused across region pages — hero button texts (“VER PAÍSES”, “A MEDIDA”) and the newsletter block strings (heading, name/email placeholders, button text). One row per locale; removing a locale from the form deletes it.

Singleton record for the public-site footer. Global section (all locales): social links (TikTok, Instagram, LinkedIn, YouTube, Pinterest — each platform once) and trust logos (Visa, Mastercard, Confianza Online). Per-locale: the footer link columns (link_groups), newsletter heading, copyright, address, disclaimer, and the bottom legal-links row.

A fixed, seeded set of legal pages — edit-only, never created or removed from the panel. Three records keyed by type: Privacy Policy, Cookie Policy, and Terms & Conditions. Manages per-locale title, structured sections (subtitle + rich-text body), and SEO title/description. Each type maps to a fixed public path (e.g. Privacy → /politica-privacidad).

  • Singletons: Home Page, About Us, and Footer allow only one record each.
  • Fixed sets: Legal Pages are edit-only; Colors are seed-only (edit hex, no create/delete).
  • Localization: Locale options come from each Market’s supported_locales. Celebrity Pages are the exception — one market, one language, no translations.
  • Audit: All CMS models are activity-logged.
  • API contracts: CMS Content API
  • Source: backend/app/Filament/Resources/Cms* and backend/app/Filament/Pages/Settings/CmsRegionLabelsSettings.php