Skip to content Skip to sidebar

This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

Sun Mon Tue Wed Thu Fri Sat
- 11:00 – 15:00 11:00 – 15:00 11:00 – 15:00 11:00 – 15:00 11:00 – 15:00 -
- 16:00 – 20:00 16:00 – 20:00 16:00 – 20:00 16:00 – 20:00 16:00 – 20:00 -

Supporter timezone: Europe/Rome (GMT+01:00)

This topic contains 3 replies, has 0 voices.

Last updated by Laura 9 months, 3 weeks ago.

Assisted by: Laura.

Author Posts
February 7, 2025 at 10:40 am #16679029

edmondoP

Background of the issue:
Sto usando le traduzioni automatiche. WPML ha tradotto tutto e anche il campo ACF in questione.

Symptoms:
Purtroppo quando da frontend richiamo il campo ottengo NULL.

Questions:
Perché il campo ACF tradotto non viene visualizzato correttamente sul frontend?
C'è un problema noto con WPML e i campi ACF tradotti?

February 7, 2025 at 4:50 pm #16680672

Laura
WPML Supporter since 05/2018

Languages: English (English ) Italian (Italiano )

Timezone: Europe/Rome (GMT+01:00)

Salve,

grazie per averci contattato.

Cosa usi per mostrare il campo nel front end? Di che campo si tratta? Quali sono le preferenze di traduzione?

February 7, 2025 at 5:01 pm #16680694

edmondoP

Il campo è un campo di tassonomia.
È un gruppo e si chiama: "link_more". Al suo interno ci sono tre campi:
testo -> "titolo"
link -> "link_di_approfondimento"
vero/falso -> "apri_una_nuova_tab"

Le preferenze di traduzione sono: "Stessi campi tra le lingue"

Per il frontend uso

$term = get_queried_object();
$link_group = get_field( 'link_more', $term->term_id );

In italiano ottengo il risultato, nelle altre lingue NULL

Se serve posso condividere gli accessi. Il sito è in produzione

February 10, 2025 at 12:05 pm #16686926

Laura
WPML Supporter since 05/2018

Languages: English (English ) Italian (Italiano )

Timezone: Europe/Rome (GMT+01:00)

Servirebbe un filtro che dica ad ACF di cercare il termine tradotto, usando solo $term->term_id cerca l'ID originale del campo che non esiste nelle altre lingue, per questo ricevi NULL.

Prova con

$term = get_queried_object();
$current_language = apply_filters('wpml_current_language', null);

// Ottieni l'ID del termine tradotto
$translated_term_id = apply_filters('wpml_object_id', $term->term_id, $term->taxonomy, false, $current_language);

// Recupera il campo ACF dal termine tradotto
$link_group = get_field('link_more', $translated_term_id);

Per una spiegazione più ampia degli hook di WPML vedi qui.

The topic ‘[Closed] Ho un campo ACF che è correttamente tradotto ma non riesco a richiamarlo su frontend’ is closed to new replies.