Il plugin Multilingua rende possibile per gli amministratori di un forum multilingue creare un ambiente ricco e comprensibile per tutti gli utenti e gli ospiti, anche se non parlano la lingua predefinita o maggioritaria del forum.
campi opzionali per la lingua dell’interfaccia e dei contenuti durante la registrazione (in arrivo).
Nota importante
Tutte le funzionalità sopra elencate funzionano sopra l’attuale sistema di localizzazione di Discourse e operano in conjunction con tutte le funzionalità di tale sistema (vedi la spiegazione più dettagliata qui).
Se desideri aggiungere lingue dell’interfaccia (‘locali’) a Discourse, il modo migliore è seguire i passaggi descritti qui: How to add a new language. Puoi anche aggiungere un locale tramite un plugin, come descritto qui.
La possibilità di farlo tramite l’interfaccia di amministrazione di questo plugin dovrebbe essere considerata solo dopo aver esaurito i metodi supportati da Discourse. Qualsiasi lingua aggiunta a Discourse tramite i metodi supportati da Discourse sarà automaticamente disponibile per tutte le funzionalità di questo plugin.
Questo plugin è stato reso possibile grazie al supporto della Wikimedia Foundation, con particolare contributo da @Elena_Lappen e @icaria36, che hanno avuto un ruolo significativo nella progettazione delle funzionalità.
Per ulteriori discussioni sul ragionamento alla base di questo plugin, vedi:
Wow! Sei stato molto impegnato. Ottimo lavoro, @angus! Non vedo l’ora di vedere esempi di questo in azione. Fammi sapere se hai bisogno di qualcuno come me per esaminarlo e fornire feedback.
Una lacuna è stata la mancanza di una funzionalità che permetta allo staff di migliorare le traduzioni dei post forniti dal plugin di traduzione: sarà parte di questo sforzo?
Mmh. Non lo escludo, ma probabilmente rientra più nell’ambito del plugin di traduzione.
Una funzionalità in qualche modo correlata, che ho sviluppato in passato per un altro progetto, è una piccola icona con un numero che appare per gli utenti quando la lingua che stanno utilizzando fa ricorso a quella predefinita perché manca una traduzione. Cliccando sull’icona si visualizza:
“x traduzioni mancanti per questa pagina. Aiutateci a tradurle qui: (link a Transifex di Discourse).”
Sembra che molti dei nostri vecchi argomenti stiano ricevendo retroattivamente il tag della lingua, il che è desiderabile, ma solo una manciata finora. Verrà eseguita una job per applicare il tag a tutti i post esistenti alla fine? In caso contrario, esiste un modo per applicare un tag della lingua a tutti i post esistenti? Il nostro sito è stato solo in inglese fino a questo punto, quindi voglio che tutti i post esistenti abbiano il tag en.
Quando hai più lingue impostate sotto le lingue del contenuto, dovresti essere in grado di filtrare per una lingua individuale? Attualmente, quando faccio clic su una delle lingue nel menu a tendina, non succede nulla.
Grazie per il feedback, David, e per aver provato questa funzionalità. Ho apportato diverse modifiche che, tra l’altro, risolvono i due problemi che hai menzionato sopra.
Non ancora. Attualmente, solo i post tradotti dal plugin Traduttore riceveranno automaticamente un’etichetta di contenuto in retroattiva (se il plugin Traduttore è abilitato e la funzione di sincronizzazione è attiva).
Posso aggiungere un’attività del genere, ma dovrà richiedere una lingua specifica come parametro ed essere eseguita su un ambito definito. Oltre a un ambito ‘globale del sito’, potrei effettuarla per categoria o per etichetta (non di contenuto), ovvero applicare questa etichetta di contenuto a tutti gli argomenti in una determinata categoria o con un’altra etichetta specifica. Cosa ti funzionerebbe meglio?
No, l’elenco serve solo a mostrarti quali sono attualmente le lingue dei contenuti impostate. Potresti spiegarmi come ti aspetti (o preferisci) che si comporti questa funzione?
Idealmente, vorrei che il tag en venisse applicato a tutti i post esistenti che non hanno un tag di lingua. È troppo ampio? Il problema è che se un utente imposta la propria lingua di contenuto su, ad esempio, inglese e spagnolo, vedrà solo i post con il tag di lingua, non le migliaia di post senza tag.
Poiché c’è un elenco e gli elementi si evidenziano al passaggio del mouse, si crea l’impressione che siano cliccabili. In tal caso, mi aspetto che cliccando su uno di essi i tuoi post vengano filtrati per quella lingua. Penso che potrebbe essere una funzionalità utile per filtrare per lingua, ma non è qualcosa per cui sono disposto a morire.
A proposito: mi piacerebbe avere la possibilità di spostare il pulsante della lingua. Ho già molti elementi nella barra di navigazione e sta iniziando a diventare affollata. Inoltre, il pulsante evidenziato sembra fuori posto sopra il pulsante “Nuovo argomento”, costringendo quest’ultimo a spostarsi sotto. Immagino non sia possibile spostarlo all’inizio della barra di navigazione, ad esempio prima di Ultime? Oppure potrebbe essere fissato in un angolo come ho sulla mia homepage di WordPress https://naturephotographers.network , o potrebbe essere inserito nell’intestazione, simile all’opzione presente nel plugin di traduzione.
Capisco il tuo ragionamento per averlo inserito nella barra di navigazione, poiché stai filtrando in modo simile agli altri pulsanti, ma il punto è che lo imposti una sola volta e poi lo dimentichi. Non è come se filtrassi regolarmente per lingue diverse.
Per me, questo è il comportamento desiderato. Gli utenti non devono vedere post in una lingua straniera. Se non ci sono post nella loro lingua, devono non vedere nessun post.
Tuttavia, come opzione, una funzione di “etichettatura in blocco” sarebbe utile.
Concordo: la soluzione che ho proposto su Pavilion è che, se la lingua predefinita corrisponde a una delle lingue del topic selezionate, vengano mostrati tutti i post senza tag. Ma la taggatura in blocco sarebbe l’opzione migliore.
@angus, non sono sicuro al 100% se questo sia legato al tuo plugin o a una modifica nel core, ma potrebbe esserci un bug che ho riscontrato. Quando modifico un post esistente, apportare alcune modifiche e provo a salvare, ricevo questo errore: Nessuno dei tag selezionati può essere utilizzato. Non ci sono tag impostati tranne il tag en, e il numero minimo di tag richiesti in un topic è impostato su 0. Hai idee?
Ho riscontrato un altro problema oggi, Angus. In precedenza avevo un tag ig (abbreviazione di Instagram) che è stato eliminato dal plugin per fare spazio alla lingua igbo. Immagino non ci sia modo di recuperarlo? Ho provato a disattivare il plugin sperando che fosse ancora lì, ma purtroppo sembra essere scomparso da tempo. So che è un rischio che si corre quando si testano i plugin. Forse dovresti aggiungere un avviso che specificherà l’eliminazione di eventuali tag con lo stesso nome.
Oddio! Sei fantastico!
Voglio dire, ti ammiro davvero. Anche se spero che questo post non distolga l’attenzione delle persone dal tuo lavoro meraviglioso.
Solo una nota: io e David abbiamo risolto questo problema e ripristinato i tag ig esistenti.
Se c’è un conflitto tra un tag preesistente e un tag di lingua del contenuto, la lingua non sarà disponibile come lingua del contenuto fino alla risoluzione del conflitto. Potrai vederlo nella sezione amministrazione delle lingue.
Caro Angus, è possibile utilizzare solo l’interruttore di lingua per gli ospiti? Non ho bisogno di utilizzare tutte le funzioni di questo sistema: mi serve solo la possibilità di cambiare la lingua dell’interfaccia per gli ospiti.
Abbiamo installato il plugin, ma ora nessun contenuto è visibile agli utenti, nemmeno allo staff. Tuttavia, quando modifichi una categoria e provi a eliminarla, otteniamo il seguente avviso:
L’unico modo per accedere a un argomento è seguire il link nel messaggio di avviso o conoscere l’URL dell’argomento. Se accediamo all’argomento (RIO Paris) e aggiungiamo un tag di lingua, ad esempio “english”, allora diventa visibile come previsto. Il nostro sospetto è che il plugin Multilingua funzioni correttamente: vengono visualizzati solo i contenuti associati a un tag. Tuttavia, troviamo fuorviante e confuso il fatto che le persone non possano vedere tutti gli argomenti correlati senza associare un tag di lingua. Abbiamo migliaia di argomenti pubblicati in precedenza che sono invisibili. Esiste una soluzione per assegnare rapidamente un tag di lingua a questi argomenti, dato che al momento non vediamo un elenco?
Vi preghiamo gentilmente di consigliarci.
Aggiornamento: Ho risolto il problema di visibilità taggando tutti gli argomenti di determinate categorie in base alla lingua che dovevano utilizzare, in Rails:
cd /var/discourse poi ./launcher enter app
Ottenere gli ID delle categorie con rake categories:list
Se una categoria che dovrebbe contenere solo argomenti in tedesco ha l’ID 245, allora rake tags:bulk_tag_category["de",245]
Dopo aver eseguito
./launcher rebuild app
ottengo una pagina vuota.
Ho scoperto che è causata da questo plugin. Non riesco ad aprire il sito né la parte di amministrazione.
Ho attivato solo il contenuto multilingue, ma non ho compilato nulla.
Come posso reimpostare le impostazioni di questo plugin nel database?
Ho disattivato questo plugin. I problemi sono iniziati con la scomparsa dell’elenco dei plugin nel pannello di amministrazione. Dopo di ciò, ho provato a ricostruire l’app, ma dopo la ricostruzione il sito non si apriva. Ora si apre, ma con questo plugin disattivato.
@angus, puoi verificare il tuo plugin con una versione fresca di Discourse?
in modalità sicura senza plugin non ufficiali vedo questa pagina senza l’elenco dei plugin:
In quel momento nessun modalità poteva risolvere il problema (sicura, senza non ufficiali, senza tutto) - in tutte le modalità non ho visto un elenco di plugin installati nel sistema.