Salta la navigazione
Aggiornato
Giugno 7, 2024

Molti temi per WordPress includono link codificati. Ad esempio, i link a piè di pagina che puntano alle pagine dell’assistenza e dei contatti possono avere questo aspetto:

<a href="/support/">Support</a> | <a href="/contact-us/">Contact us</a>

Quando il sito è multilingua questi link devono adattarsi alla lingua di visualizzazione. Sia il testo del link (ciò che il visitatore vede) che l’URL (dove punta il link) devono cambiare quando si cambia lingua.

La funzione WPML icl_link_to_element () produrrà link localizzati alle pagine e dovrebbe essere utilizzata a questo scopo.

Nota: per le versioni di WPML >=3.2 utilizza il gancio del filtro wpml_element_link. La funzione mostrata di seguito può ancora essere utilizzata, ma è stata deprecata e sarà rimossa completamente nella versione 3.3.

Descrizione della funzione

icl_link_to_element(ID, type, text, arguments, anchor);

Argomento Descrizione Richiesto / facoltativo
ID L’ID del post, della Pagina, del tag o della categoria da linkare. Richiesto
tipo Il tipo di pagina da linkare. Può essere “post”, “Pagina”, “tag” o “categoria”. Opzionale, il default è ‘post'”.
testo Il testo del link. Se non viene specificato produrrà il nome dell’elemento nella lingua corrente. Opzionale, di default il nome dell’elemento. Per lasciare il default, inserisci false.
argomenti Argomenti opzionali per il link. Quando viene utilizzato, deve essere un array PHP. Opzionale, di default non ci sono argomenti.
ancora Ancora opzionale per il link. Opzionale, il default è nessun ancoraggio

Esempio di utilizzo

Esempio Scopo HTML prodotto
<php icl_link_to_element(10); ?> Link alla Pagina 10 (pagina di supporto) <a href=”/support/”>Supporto</a>
<php icl_link_to_element(10,’post’,__(‘Chiedi aiuto’); ?> Link alla pagina di supporto con un testo di link alternativo <a href=”/support/”>Chiedi aiuto</a>
<php icl_link_to_element(10,’post’,false, array(‘category’=>’products’,’priority’=>’high’); ?> Link alla pagina di supporto e aggiunta di due argomenti <a href=”/support/?category=products&priority=high”>Support</a>
<php icl_link_to_element(10,’post’,false,’priority’=>’high’,’faq’); ?>
<php icl_link_to_element(3,’tag’); ?> Link al tag con ID 3 (il nostro tag “News”) <a href=”/tag/news/”>News</a>

Come funziona

Puoi specificare l’ID di una pagina / post / tag / categoria in qualsiasi lingua. WPML controllerà se esiste una traduzione per la lingua corrente. In caso affermativo, produrrà il link ad esso. Se la traduzione non esiste, il link sarà alla pagina in lingua originale.

Quando specifichi manualmente il testo del link, è buona norma avvolgerlo nella chiamata gettext __(), in modo che il testo venga visualizzato nella lingua corretta. Se non specifichi alcun testo di link (come nel primo esempio), WPML produrrà il nome di quella Pagina.