# ACF fields and import hooks (Ticketack WordPress)

**Canonical documentation** for integrators is the WordPress module knowledge-base
article (also embedded in **Ticketack → Documentation** in wp-admin):

- FR: https://ticketack.com/knowledge-base/integration-avec-le-module-wordpress/
- EN: https://ticketack.com/en/knowledge-base/integration-avec-le-module-wordpress/
- DE: https://ticketack.com/de/knowledge-base/integration-avec-le-module-wordpress/
- IT: https://ticketack.com/it/knowledge-base/integrazione-con-il-modulo-wordpress/

Update that KB article when field names or hooks change. This file is a maintainer pointer.

## Quick reference (F11033 / F11051+)

- Soft dependency on ACF (free for flat fields; Pro for repeaters).
- Image URLs go through `tkt_img_proxy_url` when weserv / image proxy is configured
  (`images_dimensions.big_width` / `big_height`).
- Events: metadata (`title`, `title_original`, `type`, `sections`, `version`, ages,
  `free_text_1`–`6`), cast (`directors` / `cast` / `people`), first poster/banner/still
  (url + credits + focal), `posters_json` / `trailers_json`, `screenings_summary`.
- Joined text always: `countries`, `audio`, `subtitles` (and original languages).
- ACF Pro repeaters: `tkt_event_posters`, `tkt_event_trailers`, `tkt_event_people_list`,
  `tkt_event_countries_list`, `tkt_event_audio_list`, `tkt_event_subtitles_list`.
- Labels/titles use `tkt_t()` (WP admin locale). Groups are registered via
  `acf_add_local_field_group` (PHP-local): visible on CPT edit screens, **not** as
  editable entries under ACF → Field Groups (by design).
- Focal point is CSS `object-position` (e.g. `50% 25%`).
- BC: `tkt_event_poster_url` = first poster URL.
- Hooks: `ticketack_*_imported`, `ticketack_*_import_completed` (always available).

Code: `app/helpers/acf_fields_helper.class.php`.
