Home
NexoPOS

Traduzione di NexoPOS

NexoPOS può essere tradotto registrando il codice della lingua, estraendo le stringhe di localizzazione disponibili e quindi modificando i file JSON generati. Questa guida spiega l’intero processo per l’applicazione principale e i moduli installati.

Prima di iniziare

Per accedere ai file sorgente di NexoPOS e a un terminale dalla directory principale dell’installazione. Dovresti anche conoscere il codice lingua che vuoi utilizzare, ad esempio it per l’italiano, de per il tedesco o es per lo spagnolo. Usa un codice lingua ISO valido in modo che il nome del file generato e l’opzione della lingua del profilo restino coerenti.

L’aggiunta di una lingua non già presente richiede una modifica della configurazione di base. Se la traduzione deve essere disponibile anche per altri utenti, apporta la modifica in un fork del repository NexoPOS e inviala come pull request.

Registrati nella lingua

Apri config/nexopos.php e aggiungi la lingua all’array delle lingue. La chiave dell’array è il codice della lingua e il valore è il nome visualizzato in NexoPOS.

'languages' => [
    'en' => 'English',
    'fr' => 'Francais',
    'it' => 'Italian',
],
nimshot-2026-06-29-121105-hlmbo

Per una lingua da destra a sinistra, aggiungi anche il codice della lingua all’array rtl-languages. Ad esempio, l’arabo è registrato con ar.

'rtl-languages' => [ 'ar' ],

Estrai le stringhe di traduzione principali

Esegui il comando di traduzione con il codice lingua che hai registrato. Questo esempio estrae le stringhe in italiano.

php artisan ns:translate --extract --lang=it

NexoPOS crea o aggiorna il file di lingua in lang/it.json. Sostituiscilo con il codice della lingua che stai traducendo.

image-3732467

Il file JSON

Apri il file JSON generato nel tuo editor di testo preferito. Ogni chiave è il testo originale utilizzato da NexoPOS e ogni valore è il testo tradotto che verrà visualizzato agli utenti. Mantieni le chiavi invariate e traduci solo i valori.

{
    "Dashboard": "Cruscotto",
    "Products": "Prodotti"
}

Dopo la modifica, assicurati che il file rimanga un JSON valido. Una virgoletta mancante, una virgola mancante o una parentesi graffa di chiusura mancante possono impedire il caricamento del file della lingua.

image-4945521

Un modulo

I moduli hanno i propri file di localizzazione. Innanzitutto, identifica lo spazio dei nomi del modulo dal nome della cartella all’interno della directory modules. Ad esempio, un modulo installato in modules/NsGastro utilizza NsGastro come spazio dei nomi.

php artisan ns:translate NsGastro --extract --lang=it

Questo crea o aggiorna il file della lingua del modulo in modules/NsGastro/Lang/it.json. Apri quel file e traduci i valori nello stesso modo in cui hai tradotto il file della lingua principale.

image-5300387

Rendi disponibili i file di lingua

Se le traduzioni vengono salvate ma il browser non riesce a caricarle, aggiorna i collegamenti pubblici delle lingue. Per i file della lingua principale, esegui:

php artisan ns:translate --symlink --force

Per un modulo specifico, aggiorna il collegamento pubblico del modulo con lo spazio dei nomi del modulo:

php artisan modules:symlink NsGastro

Puoi anche aggiornare i collegamenti pubblici per tutti i moduli installati eseguendo il comando senza uno spazio dei nomi.

php artisan modules:symlink

Seleziona la lingua dal profilo

Dopo che i file di traduzione sono pronti, accedi a NexoPOS e apri il profilo utente dall’intestazione della dashboard. $

open-profile411952

Seleziona la lingua tradotta, salva il profilo, quindi ricarica la dashboard.

set-language-profile590876

Se la traduzione non si applica

Se NexoPOS visualizza ancora il testo originale, controlla prima le cause più comuni.

  • La lingua non è stata selezionata nel profilo utente.
  • Il codice lingua in config/nexopos.php non corrisponde al nome del file JSON generato.
  • Il file JSON contiene un errore di sintassi.
  • Il browser non può accedere ai file di lingua da public/lang o dalla directory del modulo public.
  • Lo spazio dei nomi del modulo passato a php artisan ns:translate non è lo spazio dei nomi del modulo corretto.
image-7445231

Riepilogo

  • Registra la lingua in config/nexopos.php.
  • Estrai le stringhe principali con php artisan ns:translate --extract --lang={code}.
  • Traduci il file JSON generato in lang.
  • Estrai le stringhe del modulo con php artisan ns:translate {ModuleNamespace} --extract --lang={code}.
  • Aggiorna i collegamenti pubblici alle lingue, quindi seleziona la lingua dal profilo utente.