• ModSenior

    @webby said:

    Le pagine sono sempre le stesse, ovvero non ho duplicati.
    Non avere duplicati è un'ottima cosa ma perché scrivi che le pagine sono sempre le stesse?

    @webby said:

    Il testo risiede nel DB e, in base alla lingua sel browser, viene mostrato il testo tradotto nella propria lingua.

    No aspetta, come funziona il tuo sistema?
    Cambia il testo mostrato nella pagina mantenendo sempre lo stesso indirizzo, lo stesso url?

    Valerio Notarfrancesco


  • User

    Ciao,
    allora, supponiamo che io abbia una pagina home.php:
    in questa pagina ci sono diversi testi che scrivo sotto forma di

    
    echo $row['benvenuto'];
    
    ```dove $row['benvenuto'] non fa altro che recuperare la stringa di benvenuto contenuta nel DB in base alla lingua del browser.
    Ad esempio se IT, andrà a cercare il campo sempre con nome 'benvenuto' ma con id_lingua='IT'.
    Spero d'essermi spiegato.
    
    > Cambia il testo mostrato nella pagina mantenendo sempre lo stesso indirizzo, lo stesso  url?
    Proprio così ;)

  • ModSenior

    No, non va assolutamente bene.
    Ogni lingua deve avere un'url diversa.
    Devi raggruppare tutte le pagine destinate ad una nazione e queste devono essere raggiungibili o su un dominio di terzo livello oppure su una cartella.
    Po dagli strumenti per Webmaster di Google imposti la destinazione geografica del dominio di terzo livello oppure della cartella che hai scelto.

    Valerio Notarfrancesco


  • User

    Caspita!
    Se è così è un bel guaio.
    Perchè ammettiamo io abbia il sito tradotto in 5 lingue devo fare il clone di 5 sezioni, cioè 5 cloni per ogni pagina da indicizzare.
    E se facessi, invece, qualcosa del genere?
    en. nomesito. ext/index.php?hl=en
    de .nomesito. ext/index.php?hl=de
    fr. nomesito. ext/index.php?hl=fr
    ecc---eccc
    ?


  • ModSenior

    @webby said:

    E se facessi, invece, qualcosa del genere?
    en. nomesito. ext/index.php?hl=en
    de .nomesito. ext/index.php?hl=de
    fr. nomesito. ext/index.php?hl=fr

    Però se hai una struttura con i terzi livelli, en, de, fr, ecc. ecc. allora va bene.
    Registra e imposta pure quelli negli strumenti per Webmaster di Google.
    Ogni terzo livello sarà gestito da Google come se fosse un dominio separato: ad ognuno gli assegni una nazione diversa.

    Valerio Notarfrancesco


  • User

    Perdona l'insistenza ma mi sono espresso male.
    Volevo dire che attualmente non ho nessuna struttura particolare.
    Cioè se si va su nomesito.ext si arriva sempre alla pagina index.php che, come detto, in base alla lingua del browser, sceglie quali contenuti mostrare al visitatore.
    Ora, quello che vorrei sapere io è, evitando di avere tanti cloni di pagina quante sono le lingue proposte, quale soluzione si presta meglio?
    Fare dei sottodomini che puntano tutti alla stessa pagina ma che, questa volta, la pagina prende la lingua del sottodomino oppure lasciare un solo link e canalizzare gli utenti in base al suffitto "hl" dopo index.php?


  • ModSenior

    Il tuo cms può sicuramente usare il parametro hl o qualunque altro parametro per recuperare le informazioni dal database e generare al volo la pagina, però l'url riscritto deve necessariamente essere o un url con indicazione di una cartella oppure di un terzo livello.

    Questo perché su Google, negli strumenti per webmaster, puoi impostare la destinazione geografica solo per le cartelle oppure per i terzi livelli.
    Non puoi quindi utilizzare un parametro dell'url, non è previsto.

    Quindi se il tuo cms usa il parametro hl per visualizzare una pagina in inglese in questo modo "nomesito.ext/index.php?hl=en" tu devi riscrivere l'url in nomesito.ext/en/nomedellapagina

    Quella porzione di url, "en", è la cartella che poi negli strumenti per webmaster devi geolocalizzare.

    Valerio Notarfrancesco


  • User

    Perfetto!
    Quindi basta solo una semplice rewrite degli url?
    Se è così allora è già qualcosa di più fattibile.


  • ModSenior

    Si 😉


  • User

    Grazie!
    Alla prossima.