[Risolto] Problema traduzione codice php immesso via code snippet
Questo è il forum di assistenza tecnica di WPML, il plug-in multilingue di WordPress.
La sua lettura è permessa a tutti, ma la pubblicazione è riservata esclusivamente ai clienti di WPML. Il team di WPML risponde sul forum 6 giorni su 7, 22 ore su 24.
Spiegaci cosa stai tentando di fare.
Ho aggiunto un Leggi tutto e leggi meno alla short description del single product in woocommerce. In italiano funziona bene. Ho quindi cercato di tradurre questi testi in Inglese e francese con l'aiuto di un esempio che ho trovato sul vostro forum e l'ho adattato al mio caso. Diciamo che la traduzione funziona ma quando clicco su Read More in Inglese il testo sparisce, idem per francese.
Vedi qui: link nascosto
Il sito é ancora in sviluppo ma quasi pronto.
Siccome non sono un grande programmatore in php potreste darmi una mano a capire l'errore?
Grazie
Alex
Questo il codice che funziona in italiano:
add_action( 'woocommerce_before_single_product', 'shoptimizer_woocommerce_short_description_truncate_read_more' );
function shoptimizer_woocommerce_short_description_truncate_read_more() {
wc_enqueue_js('
var show_char = 250;
var ellipses = "... ";
var content = $(".woocommerce-product-details__short-description").html();
if (content.length > show_char) {
var a = content.substring(0, show_char);
var html = "<span class=\'truncated\'>" + a + ellipses + "Leggi tutto</p></span><span class=\'truncated\' style=\'display:none\'>" + content + "Leggi meno</span>";
$(".woocommerce-product-details__short-description").html(html);
}
$(".read-more").click(function(e) {
e.preventDefault();
$(".woocommerce-product-details__short-description .truncated").toggle();
});
$(".read-less").click(function(e) {
e.preventDefault();
$(".woocommerce-product-details__short-description .truncated").toggle();
});
');
}
Mentre questo quello che ho adattato per Inglese e Francese con uno snippet ulteriore solo per EN e FR.
<?php
//Function for the EN language
function shoptimizer_woocommerce_short_description_truncate_read_more_en() {
wc_enqueue_js('
var show_char = 250;
var ellipses = "... ";
var content = $(".woocommerce-product-details__short-description").html();
if (content.length > show_char) {
var a = content.substring(0, show_char);
var html = "<span class=\'truncated\'>" + a + ellipses + "Read more</p></span><span class=\'truncated\' style=\'display:none\'>" + content + "Read less</span>";
$(".woocommerce-product-details__short-description").html(html);
}
$(".read-more").click(function(e) {
e.preventDefault();
$(".woocommerce-product-details__short-description .truncated").toggle();
});
$(".read-less").click(function(e) {
e.preventDefault();
$(".woocommerce-product-details__short-description .truncated").toggle();
});
');
}
//Function for the FR language
function shoptimizer_woocommerce_short_description_truncate_read_more_fr() {
wc_enqueue_js('
var show_char = 250;
var ellipses = "... ";
var content = $(".woocommerce-product-details__short-description").html();
if (content.length > show_char) {
var a = content.substring(0, show_char);
var html = "<span class=\'truncated\'>" + a + ellipses + "Lire plus</p></span><span class=\'truncated\' style=\'display:none\'>" + content + "Lire moins</span>";
$(".woocommerce-product-details__short-description").html(html);
}
$(".read-more").click(function(e) {
e.preventDefault();
$(".woocommerce-product-details__short-description .truncated").toggle();
});
$(".read-less").click(function(e) {
e.preventDefault();
$(".woocommerce-product-details__short-description .truncated").toggle();
});
');
}
// If French content
if ( defined( 'ICL_LANGUAGE_CODE' ) && 'fr' == ICL_LANGUAGE_CODE ) {
//French code here
add_action( 'woocommerce_before_single_product', 'shoptimizer_woocommerce_short_description_truncate_read_more_fr' );
}
// If English content
else if ( defined( 'ICL_LANGUAGE_CODE' ) && 'en' == ICL_LANGUAGE_CODE ) {
//English code here
add_action( 'woocommerce_before_single_product', 'shoptimizer_woocommerce_short_description_truncate_read_more_en' );
}
?>
Più di così non posso suggerire, perché come detto il nostro supporto non prevede il debugging di codice custom.
Gestione del consenso per i cookie
Utilizziamo i cookie per ottimizzare il nostro sito web e i nostri servizi.
Il tuo consenso ci permette di elaborare dati come il comportamento di navigazione.
Il mancato consenso potrebbe compromettere alcune funzionalità.
Funzionale
Sempre attivo
Necessario affinché il nostro sito web funzioni e comunichi correttamente.
Preferenze
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistiche
Li utilizziamo per analizzare le statistiche del nostro sito.
Le informazioni raccolte sono completamente anonime. L'archiviazione tecnica o l'accesso che viene utilizzato esclusivamente per scopi statistici anonimi. Senza un mandato, la conformità volontaria da parte del tuo fornitore di servizi Internet o altri registri di terzi, le informazioni memorizzate o recuperate per questo scopo da sole non possono generalmente essere utilizzate per identificarti.
Marketing
Questi cookie tracciano la tua navigazione per fornirti annunci pubblicitari pertinenti.