Domanda

Ho un file translate.csv nel mio app/design/frontend/{package}/{theme}/locale/en_GB/translate.csv tema, che è sempre caricato e tradurre con successo varie voci sul mio sito. Per esempio io ho:

"Maximum words count is %1$s. In your search query was cut next part: %2$s.","Maximum words count is %1$s. The following words were ignored: %2$s."`

Il che funziona perfettamente bene. Tuttavia, è la mia comprensione che si dovrebbe essere in grado di precedere il testo con il nome del modulo, al fine di tradurre solo per quel modulo. Quindi non riesco a capire il motivo per cui quanto segue non funziona:

"Mage_CatalogSearch::Maximum words count is %1$s. In your search query was cut next part: %2$s.","Maximum words count is %1$s. The following words were ignored: %2$s."`

Ovviamente questo è un esempio di derivato, il testo in questione appare solo in un posto sul sito. Ma ci sono situazioni in cui abbiamo cose come subscribe dove sarebbe bello di tradurre in maniera diversa in luoghi diversi.

I Am mis-comprensione, o c'è un bug?

È stato utile?

Soluzione

Normalmente questo dovrebbe funzionare esattamente come ci si aspetta che. Ma nel caso che un modulo riscrive Mage_CatalogSearch_Helper_Data (dove questa stringa tradotta), alle modifiche di ambito modulo al modulo di riscrittura, a meno che la proprietà $_moduleName nella classe riscritto è impostata in modo esplicito a Mage_CatalogSearch (che si dovrebbe per la riscrittura di aiutanti).

Lo stesso vale per riscrive blocco in cui $this->__() viene utilizzato nei template.

Altri suggerimenti

Di solito dovrebbe funzionare se si mette il nome del modulo di fronte al testo.

Tuttavia, se la traduzione è stata fatta utilizzando lo strumento di traduzione in linea, viene salvato nel database (tabella di conversione). Le traduzioni del database vengono caricati, alla fine, in modo da sovrascrittura tutto il resto.

Quindi, doppio controllo che, nel suo caso, la stringa non è nel database.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top