• User

    Blog multilingue con Wordpress

    Salve a tutti!
    Ho letto già qualche conversazione già avviata da utenti con problemi simili, e vi faccio i miei complimenti per il forum, in particolare all'utente notarfrancesco che fornisce sempre risposte precise e puntuali.
    La mia intenzione è aprire un blog bilingue italiano ed inglese. Ho scelto un sito .com e la configurazione per cartelle, ossia .com/it e .com/en. Localizzerò la cartella /it per l'Italia e deciderò in seguito se localizzare quella inglese per un paese specifico o lasciarla osì com'è.
    Quello che mi interessa sapere è come posso avere queste cartelle distinte anche nel db? ho letto che il traduttore WPML (che è quello che avrei voluto usare), non permette questo ma solo una configurazione per cartelle diciamo 'fittizia'.
    Sempre leggendo nel forum, vedo che si suggerisce di implementare un network di siti, attraverso la gestione WP multisite.
    Premettendo che non realizzo siti professionalmente, secondo voi è fattibile questa strada? cosa implicherà poi in termini di gestione day-to-day? un lavoro di gestione raddoppiata?
    Vi ringrazio per l'attenzione! :smile5:


  • User

    non c'è nessuno che possa rispondere? O.o


  • ModSenior

    Ciao Katerine, ti ringrazio per i tuoi complimenti. 🙂

    Io ti sconsiglio i vari plugin per Wordpress perché prima o poi o non ti permettono di muoverti come ti occorre oppure vanno in conflitto con qualche altro plugin.
    Una soluzione è quella di installare Wordpress nella modalità network (è la soluzione più flessibile), tuttavia se devi gestire solo due cartelle / nazioni e soprattutto se sarai sempre e solo tu a gestirle, è molto più semplice gestire il sito in Wordpress o usando le pagine o usando le categorie.

    Esempio:
    dominio.com -> corrisponde alla root di Wordpress
    dominio.com/it -> it può essere una pagina di Wordpress e sotto crei delle sottopagine
    it può anche essere una categoria e poi tutti gli articoli in italiano gli associ alla categoria it

    Venendo alle tue domande.
    @Katerine said:

    Quello che mi interessa sapere è come posso avere queste cartelle distinte anche nel db?

    Cosa intendi per cartelle distinte nel db?
    A livello di url sia i motori di ricerca sia le persone vedranno le cartelle e le pagine incluse separatamente.

    @Katerine said:

    cosa implicherà poi in termini di gestione day-to-day? un lavoro di gestione raddoppiata?

    Se scegli la soluzione di installare Wordpress in modalità network, a parte la prima installazione e configurazione, non è che la gestione quotidiana sia superiore rispetto alla gestione normale.
    Avrai un unico pannello di Wordpress molto molto simile a quello a cui sei abituata per gestire le impostazioni generali del network e poi i due singoli pannelli di gestione per i 2 siti / cartelle.

    Valerio Notarfrancesco


  • User

    Grazie per la risposta! :wink3:
    Non avevo pensato a questa soluzione Pagine/Categorie che mi suggerisci, è interessante.. Si, dovrò gestire solo due lingue e sarò esclusivamente io ad occuparmi di tutto.
    In questo caso posso procedere normalmente alla localizzazione con GWT?

    @vnotarfrancesco said:

    Cosa intendi per cartelle distinte nel db?
    A livello di url sia i motori di ricerca sia le persone vedranno le cartelle e le pagine incluse separatamente.
    Valerio Notarfrancesco
    Volevo dire che nel db posso avere una root, una cartella dedicata /it e un'altra /en? Sbaglio o questa è condizione necessaria per la localizzazione geografica?

    @vnotarfrancesco said:

    Se scegli la soluzione di installare Wordpress in modalità network, a parte la prima installazione e configurazione, non è che la gestione quotidiana sia superiore rispetto alla gestione normale.
    Avrai un unico pannello di Wordpress molto molto simile a quello a cui sei abituata per gestire le impostazioni generali del network e poi i due singoli pannelli di gestione per i 2 siti / cartelle.
    Valerio Notarfrancesco
    Ok, chiarissimo. Un'ultima domanda su questo, se ad esempio creo una pagina in IT, con foto, contenuti, impaginata in un certo modo. Quando vado a mettere la traduzione /EN (nel caso WP network) dovrò ricreare il layout della pag da zero? O magari sarà possibile fare copia/incolla di quella Italiano e poi andarla a modificare?


  • ModSenior

    @Katerine said:

    In questo caso posso procedere normalmente alla localizzazione con GWT?

    Si puoi procedere normalmente.

    @Katerine said:

    Volevo dire che nel db posso avere una root, una cartella dedicata /it e un'altra /en? Sbaglio o questa è condizione necessaria per la localizzazione geografica?

    Hmm, sono due cose diverse.
    Se parliamo di root e di cartelle stiamo parlando di url tramite le quali raggiungere i contenuti e si, è una condizione necessaria.
    Però fisicamente queste informazioni risiedono tutte nello stesso db, cosa che non crea problemi.
    A volte viene richiesto espressamente invece che anche i db siano diversi in modo da dare accesso amministrativo a persone diverse.

    @Katerine said:

    se ad esempio creo una pagina in IT, con foto, contenuti, impaginata in un certo modo. Quando vado a mettere la traduzione /EN (nel caso WP network) dovrò ricreare il layout della pag da zero? O magari sarà possibile fare copia/incolla di quella Italiano e poi andarla a modificare?

    Nella modalità network puoi usare lo stesso template.
    In genere il layout anche se molto simile ha delle piccole differenze, ad esempio il piede della pagina dove i dati sono scritti in inglese e non in italiano.
    Puoi ottenere la stessa cosa anche usando un'installazione normale; in questo caso chi realizza il template dovrà prevedere un footer diverso in base alla cartella.

    Valerio Notarfrancesco


  • User

    @vnotarfrancesco said:

    Si puoi procedere normalmente.
    Hmm, sono due cose diverse.
    Se parliamo di root e di cartelle stiamo parlando di url tramite le quali raggiungere i contenuti e si, è una condizione necessaria.
    Però fisicamente queste informazioni risiedono tutte nello stesso db, cosa che non crea problemi.
    A volte viene richiesto espressamente invece che anche i db siano diversi in modo da dare accesso amministrativo a persone diverse.
    Valerio Notarfrancesco

    Perfetto, ho un dubbio che mi rimane in questo discorso.
    Dimmi se ho capito bene, le url tramite cui raggiungere i contenuti sono organizzate in cartelle /it e /en, fin qui ok.
    Nel db i contenuti linguistici devono essere riportati anch'essi in cartelle separate (sempre dentro la root) o possono risiedere tutti insieme nella root senza bisogno di suddivisioni?
    Probabilmente la domanda è stupida (?)

    Se tu dovessi dare un consiglio per un blog di contenuti, consiglieresti quale dei due metodi (network vs pagine/categorie)?
    Capisco che la modalità network è il modo più preciso di attuare il tutto, l'installazione è complessa?

    Grazie ancora! :smile5:


  • ModSenior

    Nessuna domanda è mai stupida Katerine.
    Nel db i contenuti non sono organizzati in cartelle ma in una struttura interna formata da righe e colonne, un po' come se fosse un foglio di Excel.
    E' poi Wordpress che trasforma il tutto in pagine html, cartelle e root.
    Quindi a meno che tu non abbia esigenze particolarissime il db non è un problema.

    Per un blog in sole due lingue e che dovrai gestire tu in autonomia vedo molto più semplice organizzare i contenuti in cartelle, pagine e categorie e non avventurarsi nell'installazione network di Wordpress.

    Valerio Notarfrancesco


  • User Attivo

    Mi permetto di intervenire in questa conversazione poiché ho da poco realizzato un sito multilingue con WP. Dopo aver verificato la scarsa affidabilità dei plugin trovati ho deciso di avventurarmi nel multisite, cosa che avevo già sperimentato con successo con un altro CMS open source (non blog).
    Come dice Valerio, trattandosi di due sole lingue si potrebbe anche decidere di creare una sezione "ita" ed una "eng"; nel mio caso le lingue erano inizialmente tre, poi sono diventate quattro e non è escluso che un domani il cliente se ne esca con qualche altra lingua.
    In ogni caso, uno dei vantaggi del multisite che non mi sembra sia stato accennato è la possibilità di differenziare i contenuti nel senso che, trattandosi di fatto di siti distinti e separati, non si è obbligati ad inserire lo stesso contenuto (articolo o pagina) contemporaneamente per tutte le lingue, cosa che invece non credo sia possibile evitare con i vari plugin per multilingue.
    Nel mio caso questa possibilità si è rivelata particolarmente utile poiché il mio cliente non sempre ha gli articoli già tradotti in tutte le lingue, in questo modo può inserire il testo man mano che è tradotto (infatti al momento è online solo la versione in italiano).
    L'installazione non è stata particolarmente impegnativa, se ci sono io che prima non avevo mai usato WP professionalmente penso vi possa riuscire chiunque; la gestione dei contenuti è abbastanza intuitiva, si ha la possibilità di scegliere quale sito gestire (ita, eng, deu, ecc.) e per ogni sito il pannello è quello tradizionale.
    Ovviamente ogni contenuto andrà inserito tante volte quante sono le lingue presenti, ma questo so dovrebbe fare in ogni caso sia che si utilizzi un plugin multilingue che la soluzione sezione/cartelle indicata da Valerio.

    Nel caso si decida di utilizzare la modalità multisite per avere un sito multilingue mi permetto di consigliere l'uso di un plugin che consenta di gestire la lingua del pannello di gestione poiché, di default, questa cambia in base alla lingua del sito.
    Questo sta a significare che se nel mio network ho il sito 1 in italiano ed il sito 2 in inglese, quando passo alla gestione del sito 2 avrò tutti i testi del pannello in inglese. Questo può diventare un problema quando le lingue cominciano ad essere svariate o non si dispone di una conoscenza approfondita.
    Tramite un apposito plugin è possibile impostare la lingua del pannello sempre in italiano indipendentemente dalla lingua del sito.

    Buona serata.


  • User

    Grazie mille Eugene per il tuo intervento!
    Sono propensa per il multisite, anche per la questione contenuti che hai citato:
    @Eugene said:

    In ogni caso, uno dei vantaggi del multisite che non mi sembra sia stato accennato è la possibilità di differenziare i contenuti nel senso che, trattandosi di fatto di siti distinti e separati, non si è obbligati ad inserire lo stesso contenuto (articolo o pagina) contemporaneamente per tutte le lingue, cosa che invece non credo sia possibile evitare con i vari plugin per multilingue.

    Hai seguito degli step nell'installazione di Multisite? non so se puoi linkarmi un articolo a riguardo 🙂
    Qual è il plugin che hai installato e che ti consente di gestire la lingua del pannello di gestione?
    Grazie!
    K.


  • User Attivo

    Ciao Katerine.

    Per poterti rispondere devo fare un attimo mente locale e riprendere alcuni appunti, vedrò di fare tutto domani mattina.
    In ogni caso non è nulla di drammatico, se ci sono riuscito io che sono totalmente inesperto di WordPress penso possa riuscirci chiunque.

    Buona serata.


  • User Attivo

    Buongiorno.

    Allora, la procedura che ho seguito per creare un sito multilingue è la seguente:

    1. attivata la modalità multisite (o network) seguendo questo articolo e creare i siti necessari (in questo caso uno per ogni lingua). Io avevo bisogno di un sito in quattro lingue avente l'italiano come principale, quindi ho lasciato www.nomesito.ext nella nostra lingua e creato altri 3 siti per le restanti lingue (www.nomesito.ext/eng, www.nomesito.ext/esp, www.nomesito.ext/fra);😉
    2. scaricare le lingue relative ad ogni sito. Le traduzioni in francese e spagnolo le ho trovate nei siti WordPress nelle corrispondenti lingue, anche questa un'operazione abbastanza semplice. Italiano ed inglese dovrebbe essere già incluse nel pacchetto di Word Press;
    3. installare le varie lingue ed impostarle come predefinite nei corrispondenti siti (dovremo quindi impostare l'inglese come lingua predefinita di www.nomesito.ext/eng, ecc.). Da tenere presente che quando si imposta la lingua predefinita di un sito questo vale anche per il pannello di controllo, quindi quando andremo a gestire il sito in inglese, per esempio, anche il pannello di gestione sarà in inglese;
    4. per evitare quanto sopra riportato consiglio l'uso di un plug-in (io ho usato questo e non ho avuto problemi) al fine di poter impostare in maniera autonoma, rispetto all'interfaccia utente, la lingua del pannello di gestione. Così facendo potremo anche gestire siti in russo o cinese ed avere sempre il pannello di controllo in italiano;
    5. ultimo passaggio è creare i tasti per passare da una lingua all'altra del sito.

    Su questo ultimo passaggio vorrei spendere due parole: trattandosi di una sito multilingue ottenuto in maniera "artificiosa" non è prevista la presenza dei tasti per cambiare lingua (come invece sarebbe stato nel caso in cui avessimo usato un plug-in specifico).
    Quindi dovremo essere noi a creare ed inserire manualmente tale codice nel template del sito.
    Io ho inserito il seguente codice nell'header del template da me sviluppato:

    <ul class="changeLang">
    <li><a class="flagIta" href="http://www.nomesito.ext/"></a></li>
    <li><a class="flagEng" href="http://www.nomesito.ext/eng/"></a></li>
    <li><a class="flagEsp" href="http://www.nomesito.ext/esp/"></a></li>
    <li><a class="flagFra" href="http://www.nomesito.ext/fra/"></a></li>
    </ul>
    

    Tramite classe css ho poi associato dimensioni ed un'immagine di sfondo ad ogni tasto.
    Come è possibile evincere dal sopralelencato menù, ogni volta che si cambia lingua si va sempre all'home page del sito selezionato e non, come sembrarebbe più logico, alla pagina tradotta corrispondente a quella nella quale ci si trova.
    Questa scelta è dovuta ad alcune considerazioni personali: tralasciando la pigrizia di non voler compilare il codice necessario ad ottenere tale risultato, ho tenuto presente il fatto che i siti nelle varie lingue potrebbero non avere tutti gli stessi contenuti, pertanto se io sto leggendo l'articolo "novità del 20 aprile 2013" in italiano non è detto che questo stesso articolo sia stato inserito anche nelle altre lingue. Per evitare quindi pagine di errore, pagine non trovate e redirect vari ho optato per la soluzione "tutti in home page" nel cambiare lingua. Inoltre ritengo anche che un visitatore del sito, una volta selezionata la propria lingua, non abbia motivo di cambiare.

    Come ultima cosa vorrei aggiungere un altro vantaggio del multisite che non mi sembra sia stato citato: così come è possibile gestire contenuti differenti è anche possibile associare un template differente ad ogni sito del network.
    Questa possibilità si può rivelare utile nel caso in cui si abbia l'esigenza di inserire, ad esempio, determinati elementi (banner, grafica differente, ecc.) solo in un sito e non negli altri. Sarà sufficiente creare copie del template utilizzato, associarlo al sito desiderato ed apportare le modifiche necessarie.

    Mi auguro di aver esposto tutto chiaramente e soprattutto di essere stato d'aiuto.

    Buona giornata


  • User

    Grazie Eugene, il tuo aiuto è preziosissimo!
    Sto andando avanti con l'installazione, ma mi sono bloccata per un dubbio. Io vorrei avere due siti per due lingue: www miosito.com/it e www miosito.com/en.
    La domanda è, al momento della creazione devo creare due siti?
    Poi, credo che imposterò un redirect 302 da www miosito.com a www miosito.com/it e aggiungerò il rel alternate tag.

    Che intendi per:
    @Eugene said:

    1. scaricare le lingue relative ad ogni sito.

    2. installare le varie lingue

    ?
    Ottimo suggerimento quello di creare i tasti per passare da una lingua all'altra del sito, ci studierò non appena avrò finito con la fase precedente.

    @Eugene said:

    Mi auguro di aver esposto tutto chiaramente e soprattutto di essere stato d'aiuto.
    Molto più che d'aiuto!!


  • User Attivo

    Buongiorno Katerine

    Il sito da creare come template, hosting e tutto il resto, è uno solo.
    Solo dopo aver configurato il network come da articolo indicato avrai la possibilità di creare e gestire quanti siti vorrai (anche impostando un template differente per ogni sito) ma di fatto, sul server, avrai sempre un solo sito.
    Anche le cartelle www miosito.com/it e www miosito.com/en in realtà non esistono, viene tutto gestito virtualmente dal network.
    Nel tuo caso, se vuoi inmpostare www miosito.com/it come sito principale potresti anche installare WordPress all'interno di questa directory e poi creare virtualmente quella per le altre lingue anche se io sono dell'idea di installare tutto nella root ed eventualmente gestire www miosito.com/it tramite il multisite. Credo che una soluzione valga l'altra quindi sta a te decidere quella che preferisci.

    La faccenda delle lingue è molto semplice: per l'installazione ho utilizzato una versione di WordPress contenente solo l'italiano, non era quindi presente il testo (e non mi riferisco a quello che inserisco io tramite pannello di gestione - pagine, articoli - ma a tutto ciò di testuale che viene mostrato al visitatore durante la navigazione delle pagine) in nessun'altra lingua.
    Per poter impostare la lingua principale di un sito è indispensabile che detta lingua sia disponibile (e quindi sia stata installata). Se così non è si deve provvedere.
    Per questo ho recuperato le lingue che mi servivano e le ho installate.


  • User

    Sto avendo un problema con il Multisite...
    Ho effettuato tutti i procedimenti della creazione del network (creazione cartella blogs.dir, ho aggiunta codici al file wp-config.php, modifica del file htaccess).
    Successivamente, ri-accedendo a WP, ho visto che appariva correttamente la voce 'i miei siti' con possibilità di amministrare la rete e di creare i nuovi siti.
    Ho creato dunque i siti desiderati, ossia www miosito.com/it e www miosito.com/en (dando rispettivamente come indirizzo sito /it e /en).
    Ho reso disponibile il tema e i plugin a tutta la rete, li ho riattivati all'interno dei singoli siti.
    A questo punto per verificare il tutto ho lanciato www miosito.com/it ma con mia grande sorpresa mi ha restituito un errore 404. Lo stesso per l'inglese.
    Ho provato a creare un nuovo blog post in miosito.com/it ma ho notato che me lo pubblica erroneamente su www miosito.com.
    Dove può essere l'errore? nel file htaccess? non so più come andare avanti!!
    Grazie ancora....


  • User

    ignorate la mia ultima richiesta, ho risolto!! si trattava di uno slash di troppo.. 🙂


  • User

    Ciao Eugene!
    Grazie alla tua segnalazione su Multisite language switcher ho potuto configurare tutto correttamente!
    Volevo dirti che per il selettore della lingua, ho trovato una funzione in questo plugin che mi ha permesso di farlo senza andare a toccare l'html. Ti permette di inserire la selezione della lingua (con bandierine o descrizione a piacere) come widget (io l'ho messo nella sidebar).
    Adesso però ho un grosso problema, forse la tua esperienza è in grado di aiutarmi nuovamente 🙂
    Non riesco ad attivare i plugin nei singoli siti, ho postato una domanda www giorgiotave.it/forum/plugins-per-wordpress/207480-attivare-i-plugin-wp-multisite.html#post1070875 ... Grazie!!!


  • User

    Scrivo la soluzione al mio dilemma, in caso servisse a qualcuno: quando si installa lato super admin un plugin e si clicca 'network activate', wp te li installa automaticamente in tutti i siti, senza però la possibilità di vederli dalle relative dashboard.
    Il super admin in questo caso non lascia la scelta agli admin dei singoli siti se attivare o meno i plugin, vengono attivati e risultano funzionanti ma non possono essere visti dalla sezione plugins 🙂


  • User Attivo

    Buongiorno Katerine.

    Mi fa piacere leggere che tu abbia già risolto il tuo problema, a questo punto posso solo augurarti in bocca al lupo per il tuo sito e per i lavori futuri.