Passa al contenuto principale

Riferimento post meta (bec_unit)

Riferimento sviluppatori: per sviluppatori di temi e plugin.

Il post meta è registrato con register_post_meta (visibile REST dove indicato, sanificato). Usa il prefisso bec_ per campi custom o ACF così restano in namespace coerente con questo plugin.

Post meta (bec_unit)

Meta keyTipoNote
bec_external_idstringIdentificatore sistema esterno.
bec_provider_slugstringChiave provider (es. slug integrazione).
bec_last_sync_atstringDatetime ISO 8601 o vuoto.
bec_sync_enabledbooleanDefault true; controlla se la sync gira per questa unità.
bec_sync_payloadstringStringa JSON: ultima riga unità remota sincronizzata (dopo bec_sync_remote_unit). Mostrata nel meta box admin “Booking engine — synced data”; non esposta via REST di default.
bec_sync_gallery_source_hashstringImpronta SHA-256 dell’elenco ordinato di URL remoti (legacy + migrazione; ancora aggiornata alla sync; vedi Campi canonici unità).
bec_sync_gallery_image_set_hashstringSHA-256 dell’elenco ordinato di chiavi immagine (set invariato se cambia solo l’ordine).
bec_sync_gallery_image_order_hashstringSHA-256 dell’elenco ordinato di chiavi immagine in ordine di visualizzazione.
Meta keyNote
_bec_source_urlURL remota usata all’ultima sync del file.
_bec_gallery_unit_idID post bec_unit proprietario.
bec_gallery_image_keyId stabile per questa immagine nell’unità.
bec_gallery_file_hashSHA-256 del file locale per deduplica.

Opzioni (get_option)

OpzioneScopo
bec_sync_gallery_image_prefixPrefisso ai nomi file gallery generati automaticamente (default vuoto).
bec_sync_gallery_image_suffixTra slug nome unità e indice -NN (default vuoto).

Campi core unità (bec_core_*)

Semantica canonica condivisa tra provider (nome, indirizzo, geo, occupazione, orari, locali, bagni, descrizione, m², servizi, gallery come ID allegati). Compilati da ProviderInterface::extractCoreUnitFields() alla sync; modificabili in Unit — core fields (canonical). Vedi Campi canonici unità.

Campi mappati opzionali (per provider / client)

Ogni provider può dichiarare UnitSyncFieldDefinition extra per meta specifici del sito. Alla sync i valori sono scritti e modificabili in Booking engine — unit fields (Kross di default nessuno).

  • Estendi — filtro bec_unit_sync_field_definitions (definizioni, slug provider) oppure implementa ProviderInterface::getUnitSyncFieldDefinitions().
  • Slug analizzati — filtro bec_unit_sync_provider_slugs (default: kross).
  • Salta sovrascrittura sync — filtro bec_sync_apply_mapped_unit_fields (default true).

ACF

Se aggiungi Advanced Custom Fields (o simile), preferisci nomi/chiavi sotto il prefisso bec_ per evitare collisioni con core WordPress, altri plugin e queste chiavi registrate.