Ciao @giorgiocurreli,
l’unica cosa che mi viene in mente è che il tema installato magari non stia usando le funzioni di traduzione di WordPress.
Prova a guardare nella cartella del tema se esistono dei file che sovrascrivono quelli di Woocommerce.
Questi sono gli originali del plugin e la rispettiva riga di codice che mostra le stringhe non tradotte:
...\plugins\woocommerce\templates\checkout\form-checkout.php
<h3 id="order_review_heading"><?php esc_html_e( 'Your order', 'woocommerce' ); ?></h3>
...\plugins\woocommerce\templates\checkout\form-shipping.php
<input id="ship-to-different-address-checkbox" class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" <?php checked( apply_filters( 'woocommerce_ship_to_different_address_checked', 'shipping' === get_option( 'woocommerce_ship_to_destination' ) ? 1 : 0 ), 1 ); ?> type="checkbox" name="ship_to_different_address" value="1" /> <span><?php esc_html_e( 'Ship to a different address?', 'woocommerce' ); ?></span>
Se trovi i file corrispondenti nel tema, verifica che le due stringhe siano all’interno della funzione esc_html_e(). In questo caso è consigliabile verificare se l’autore ha rilasciato un aggiornamento.
Facci sapere se scopri qualcosa.
Ciao!
intanto grazie davvero per il suggerimento, do uno sguardo e cerco di capire
Allora, la situazione è questa:
i due file php del plugin sono esattamente come li hai indicati tu, nel tema ci sono i file corrispondenti ma al netto di un h4 anzichè h3 per il form check out e dell’indicazione del tema stesso la situazione mi sembra identica.
The7: form-checkout.php (woocommerce/checkout/form-checkout.php)
<h4 id=”order_review_heading”><?php esc_html_e( ‘Your order’, ‘the7mk2’ ); ?></h4>
The7: form-shipping.php (woocommerce/checkout/form-shipping.php)
<h3 id=”ship-to-different-address”>
<label class=”woocommerce-form__label woocommerce-form__label-for-checkbox checkbox”>
<input id=”ship-to-different-address-checkbox” class=”woocommerce-form__input woocommerce-form__input-checkbox input-checkbox” <?php checked( apply_filters( ‘woocommerce_ship_to_different_address_checked’, ‘shipping’ === get_option( ‘woocommerce_ship_to_destination’ ) ? 1 : 0 ), 1 ); ?> type=”checkbox” name=”ship_to_different_address” value=”1″ /> <span><?php esc_html_e( ‘Ship to a different address?’, ‘the7mk2’ ); ?></span>
</label>
</h3>
C’è qualcosa di sbagliato che mi sfugge?
La cosa più evidente che noto è che il tema sta usando le sue traduzioni, non quelle di Woocommerce.
Se guardi la stessa riga presa dal plugin e dal tema te ne accorgi:
Plugin: <?php esc_html_e( ‘Your order’, ‘woocommerce‘ ); ?>
Tema: <?php esc_html_e( ‘Your order’, ‘the7mk2’ ); ?>
Il secondo parametro della funzione esc_html_e()
è il text domain, in sintesi dove andare a cercare le traduzioni. (documentazione).
Nella seconda riga come puoi vedere il text domain non è ‘woocommerce’ ma quello del tema, per cui WordPress cercherà la traduzione di quella stringa nei file di lingua del tema.
Se vuoi averne la certezza, potresti provare a sostituire ‘the7mk2’ con ‘woocommerce’ (fai sempre un backup prima, per sicurezza).
Naturalmente sarebbe una soluzione non ottimale, perchè dovrebbe essere l’autore a sistemare la cosa. In alternativa, potresti creare un child theme in cui copi questi file e fai la modifica del text domain.
Spero di essere stato comprensibile.
Fammi sapere come va.
-
Questa risposta è stata modificata 3 anni, 8 mesi fa da Andrea Porotti.
Grazie ancora, sei stato chiarissimo. Il sito è già impostato sul child, adesso vedo di correggere. Per l’inesperienza mi era sfuggito questo particolare, anche se ora che me lo hai indicato mi sento un imbecille dal momento che l’ho anche scritto che veniva indicato il tema…
Nessun problema, le sviste capitano quando si lavora con il codice 🙂