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.

Etichettato: 

This topic contains 5 risposte, has 2 voci.

Last updated by marcoZ-25 2 mesi, 2 settimane fa.

Assigned support staff: Alejandro.

Autore Post
July 30, 2019 at 2:52 pm #4308873

marcoZ-25

ciao Alejandro
sono ancora in attesa che i tecnici dell'hosting mi aumentino la memoria.
Nel frattempo ho un'altra questione da sottoporti

sto personalizzando un poco woocommerce con un tema child

come faccio a rendere traducibili le stringhe personalizzate che aggiungo nel file functions.php?

nello specifico ecco le strighe

// define the woocommerce_single_product_summary callback function
function my_custom_action() {
echo '<span class="px-field-name">Diametro</span><span class="px-field-value">', do_shortcode('[lscf_customfield custom_field_id="diametro__pxid_mtetfbjjqbuspbv_0"]'), '</span></br>';
echo '<span class="px-field-name">Lunghezza foratura L1/L2</span><span class="px-field-value">', do_shortcode('[lscf_customfield custom_field_id="lunghezza_foratura_l1_l2__pxid_sukvhsqfnxspcjp_0"]'), '</span></br>';
};
add_action( 'woocommerce_single_product_summary', 'my_custom_action', 15 );

dovrei rendere traducibile
Diametro
Lunghezza foratura L1/L2

e altri 3/4 che devo ancora impostare, ma con una formattazione simile

July 30, 2019 at 3:12 pm #4308945

Alejandro
Supporter

Languages: Inglese (English ) Spagnolo (Español ) Italiano (Italiano )

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

Ciao, ho separato questa tua domanda perché per le regole del forum posso rispondere soltanto una domanda per ticket.

Per poter tradurre le stringhe devi localizzarle usando una delle chiamate getText:
https://codex.wordpress.org/Function_Reference/_2

Ci sono diverse ma per quello che vedo nel tuo codice, mi sa che devi usare __(), visto che la stringha si trova già dentro un "echo".

Quindi per "Diametro" basta che trasformi la stringa in:

__('Diametro','inserisci-qui-un-nome-dominio-qualunque');

Provaci e fammi sapere com'è andata.

July 31, 2019 at 7:24 am #4312289

marcoZ-25

Perciò devo farla diventare così?

echo '<span class="px-field-name">'__('Diametro','campipersonalizzati')'</span><span class="px-field-value">', do_shortcode('[lscf_customfield custom_field_id="diametro__pxid_mtetfbjjqbuspbv_0"]'), '</span></br>';

July 31, 2019 at 9:51 am #4313387

Alejandro
Supporter

Languages: Inglese (English ) Spagnolo (Español ) Italiano (Italiano )

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

Se vuoi scriverla come hai appena fatto (che penso sarebbe la miglior opzione) ti conviene usare invece la funzione _e() perché la differenza tra quella che ti ho dato ( __() ) e questa nuova ( _e() ) è che la prima non fa l'echo automaticamente e invece _e() fa l'echo.

Quindi sarebbe così:

echo '<span class="px-field-name">'._e('Diametro','campipersonalizzati')'</span><span class="px-field-value">', do_shortcode('[lscf_customfield custom_field_id="diametro__pxid_mtetfbjjqbuspbv_0"]'), '</span></br>';

Oppure

echo '<span class="px-field-name">__("Diametro","campipersonalizzati")</span><span class="px-field-value">', do_shortcode('[lscf_customfield custom_field_id="diametro__pxid_mtetfbjjqbuspbv_0"]'), '</span></br>';

Saluti.

July 31, 2019 at 12:30 pm #4314315

marcoZ-25

perfetto
funziona

July 31, 2019 at 12:31 pm #4314317

marcoZ-25

My issue is resolved now. Thank you!